3 votes

Les applications système peuvent-elles être activées/désactivées directement à partir du système de fichiers ?

Les applications système peuvent être désactivées en utilisant pm disable [appname] et réactivé de la même manière. Mais existe-t-il un moyen d'accomplir la même chose en modifiant un ou plusieurs fichiers quelque part ?

Le contexte : Ma machine virtuelle Android-x86 est sur Boucle d'amorçage causée par la désactivation de la Google App . C'est la raison principale pour laquelle je pose cette question.

4voto

Marc.2377 Points 404

L'activation ou la désactivation d'une application est stockée dans un seul fichier. /data/system/users/0/package-restrictions.xml .

J'ai suivi les étapes suivantes pour réactiver l'application Google et résoudre mon problème de boucle de démarrage :

  1. Démarrer la machine virtuelle Android-x86 en mode débogage (c.-à-d. annexer DEBUG=2 à l'entrée GRUB)

  2. monter le système de fichiers :

    su
    
    cd /dev    # these are necessary to "refresh" the environment
    cd ..      # otherwise the following commands wouldn't work
    
    mkdir temp
    mount /dev/block/sda1 temp
  3. Modifier le package-restrictions.xml avec vi :

    vi /temp/android-6.0-rc1/data/system/users/0/package-restrictions.xml
    • Trouvez l'entrée contenant <pkg name="com.google.android.googlequicksearchbox" enabled="3" enabledCaller="com.android.settings">

    • Déplacez le curseur à la fin de cette ligne (Ligne 13 dans mon cas) et appuyez sur a pour commencer l'édition (voir Commandes vi de base )

    • Retirer le enabled y enabledCaller attributs. La ligne qui en résulte devrait être <pkg name="com.google.android.googlequicksearchbox">

    • Appuyez sur Esc et le type :wq et appuyez sur Enter pour sauvegarder et quitter vi

  4. Type exit et appuyez sur Entrée (deux fois) pour démarrer normalement sur Android.

2 votes

Il est également possible de retirer simplement le package-restrictions.xml un nouveau fichier "propre" sera recréé au prochain redémarrage.

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