3 votes

Comment puis-je mettre à jour une application système sans réinstaller le système d'exploitation ?

J'ai créé une application et l'ai installée sur un appareil dans l'image système Android.

Maintenant, j'ai ajouté de nouvelles fonctionnalités à mon application et je veux mettre à jour mon application d'installation actuelle avec cette nouvelle fonctionnalité.

Je pourrais le faire en réinstallant le système d'exploitation Android avec la nouvelle version de l'application.

Y a-t-il une autre façon de procéder pour mettre à jour l'application sans avoir à mettre à jour l'ensemble du système d'exploitation Android ?

4voto

DataDino Points 186

Tant que vous avez la release key (ou toute autre clé que vous utilisez) utilisée pour signer l'application dans le /system, vous pouvez rapidement charger votre application en parallèle :

adb install -r bin/my-signed-app.apk

Notez l'option '-r'.

Cela mettra à jour l'application, mais ne supprimera pas/mettra à jour le fichier apk dans /system ou effacera les données de l'utilisateur.

Il se peut que vous deviez d'abord effacer les données en raison de modifications du schéma de la base de données :

adb shell pm clear my.app.package

Vous pouvez ensuite supprimer manuellement cette "mise à jour" via l'activité des paramètres de l'application.

3voto

Khurram Aziz Points 938

Il n'y a pas de moyen "direct" de le faire. Vous ne pouvez pas mettre à jour l'application système à partir du Play Store - vous pouvez télécharger la mise à jour, mais elle s'installera comme une application indépendante (qui fonctionnera à la place de l'application système à partir de là), mais l'application système restera toujours dans le système, et elle ne peut pas être remplacée par le Play Store ou l'installateur défalqué présent dans le système.

Vous pouvez le faire manuellement, en remplaçant le fichier .apk de /system/app (ou priv-app) par le fichier .apk différent, et en définissant les permissions adéquates.

Et cela peut aussi se faire en mettant à jour le système, soit par OTA, soit en flashant des ROMs - qui remplaceront complètement l'ancienne application.

2voto

Matthew Read Points 50150
  1. Enraciner l'appareil

  2. Remonter /system comme accessible en écriture (j'utilise Root Explorer pour cela)

  3. Remplacer /system/app/NameOfYourApp.apk avec la nouvelle version

  4. Vous devrez peut-être vider le cache et les données de l'application et redémarrer.

androidalle.com

AndroidAlle est une communauté de androiders où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X