Actualizarea aplicației de sistem în Android (Programare, Android, Sursă Android)

Yuichi Akiyoshi a intrebat.

Am dezvoltat o aplicație android și am pus acest lucru ca APK pre-construit în AOSP. deci aplicația va fi instalată în /system/app ca aplicație de sistem.

Aplicația are funcția de actualizare în sine prin descărcarea și instalarea versiunii mai noi APK.

Dar nu funcționează pentru că aplicația de sistem nu poate fi actualizată. există vreo modalitate de a actualiza aplicația de sistem autoconstruită?

Comentarii

  • Am rulat firmware-ul meu. Dezvolt dispozitive de studiu pentru studenți, așa că am făcut dispozitive android și am personalizat android os pentru aceste dispozitive. –  > Por Yuichi Akiyoshi.
  • utilizați certificatele de semnare a sistemului (la fel ca semnarea sistemului de operare) pentru a semna apk-ul, apoi încercați să actualizați (suprainstalare) aplicația –  > Por Anand Tiwari.
  • puteți menține versiunea aplicației în serviciul dvs. final și, în timp ce consumați serviciile dvs., puteți verifica versiunea aplicației utilizatorilor și versiunea actualizată a aplicației dvs. și să returnați o adresă URL pentru actualizare dacă aplicația este veche. tratați acest caz în aplicație în mod corespunzător și permiteți utilizatorilor să actualizeze aplicația. –  > Por Gaurav.
  • @AnandTiwari, Puteți să-mi spuneți cum să obțin certificatul de semnare a sistemului? –  > Por Yuichi Akiyoshi.
  • @ZhaoLin, Nu sunt sigur dacă sistemul de operare este propriul dvs. sistem de operare, certificatul de semnare al sistemului de operare înseamnă certificatul utilizat pentru a construi sistemul de operare sau puteți contacta asistența furnizorului dvs. –  > Por Anand Tiwari.
2 răspunsuri
user2269707

Aplicația de sistem poate fi actualizată, în două moduri:

  1. Actualizat prin actualizarea ota, acest lucru va schimba aplicația direct, iar aplicația încă există pe /system.

  2. actualizat prin utilizarea api de instalare a pachetului, acest lucru are nevoie ca noua versiune apk să aibă aceeași semnătură cu cea de pe /system, iar noua versiune va fi instalată pe /data. Asta înseamnă că, dacă dispozitivul este resetat, noua versiune se va pierde.

Ota update este o modalitate normală de actualizare a aplicațiilor de sistem.

Comentarii

  • Bună ziua, ce este api de instalare a pachetelor? –  > Por Hanan.
  • Cred că se referă la pm install -r <package_name> corect? Mai este valabil pe Android 10? –  > Por RiccardoB.
jonathanzh

Da, puteți instala o versiune actualizată a aplicației de sistem originale în partiția /data, cu condiția ca:1. Ambele versiuni ale aplicației să fie semnate cu aceeași cheie;2. Aplicația actualizată a versionCode este mai mare sau egală cu cea a aplicației originale.

O modalitate de a efectua această actualizare este de a utiliza următoarea comandă adb: adb install -r <your updated apk file>. Apoi, puteți testa versiunea actualizată fără a fi nevoie să reconstruiți codul AOSP.

Rețineți că versiunea dvs. actualizată din partiția /data va fi eliminată prin intermediul unei resetări a datelor din fabrică. În acest caz, aplicația dvs. de sistem originală va intra din nou în vigoare.