Désinstaller une application préinstallée sans accès privilégié
· 2 min read
C'est la commande centrale de tout ce que nous faisons ici :
adb shell pm uninstall --user 0 com.exemple.paquet
Si la réponse est Success, l'application a disparu du téléviseur.
Ce que fait vraiment cette commande
pmest le gestionnaire de paquets d'Android.uninstallretire une application.--user 0est la partie décisive : elle la retire du seul utilisateur principal, pas du système.
Sans --user 0, la commande échouerait sur une application système : Android
n'autorise pas la suppression dans le micrologiciel. Avec, le fichier d'origine
reste intact sur la partition système, qui n'est jamais modifiée.
Trois conséquences :
- C'est annulable en une commande.
- Une réinitialisation d'usine remet tout en place.
- Le micrologiciel n'a pas été touché : rien ne peut rester à moitié fait.
Annuler
adb shell cmd package install-existing com.exemple.paquet
Rien n'est téléchargé : la copie d'usine est réinstallée.
L'alternative plus douce : désactiver
adb shell pm disable-user --user 0 com.exemple.paquet
L'application reste installée mais ne s'exécute plus. Pour revenir :
adb shell pm enable com.exemple.paquet
Les erreurs que vous rencontrerez
Failure [DELETE_FAILED_INTERNAL_ERROR] — presque toujours un nom de paquet
mal orthographié.
Failure [not installed for 0] — c'était déjà retiré.
Success mais l'application est toujours là — redémarrez le téléviseur.
Avant de vous lancer
- Un paquet à la fois. Quinze d'un coup, et vous ne saurez pas lequel a cassé quoi.
- Testez la télécommande après chaque retrait. C'est ce qui se remarque en premier et ce qui est le plus pénible à récupérer.