4 votes

Quel attribut allowBackup est utile pour comprendre si une application peut être sauvegardée ?

Un utilisateur de notre site voulait sauvegarder un jeu . Pour un appareil non enraciné, la voie habituelle pour la sauvegarde est soit avec Google Cloud Sync, soit avec adb. Les deux dépendent de l'attribut allowBackup dans le manifeste de l'application. Si elle est fausse, elle ne sera pas sauvegardée. C'est ce que j'ai compris, jusqu'à présent.

Lors de la lecture du manifeste du jeu j'ai trouvé deux entrées pour allowBackup. La première est réglée sur false (ligne 6), et la dernière sur true (ligne 70). J'essaie de comprendre laquelle des deux doit m'intéresser, en tant qu'utilisateur final, pour vérifier si le jeu/application peut effectivement être sauvegardé par adb ou Google ? Une explication, même brève, serait la bienvenue pour savoir pourquoi il y a deux attributs allowBackup, et s'il peut y avoir plus que ces deux attributs dans une application/un jeu ?

Une autre chose déroutante est que pour les applications normales (non liées à des jeux), l'attribut a toujours été écrit comme suit android:allowBackup=<FLAG> mais pour le jeu ici, c'est game_display_name:allowBackup=<FLAG> . Cette convention est-elle spécifique à un jeu ? La réponse à cette partie de la question est facultative.

4voto

pr0nin Points 353

Je ne sais pas quel outil vous avez utilisé pour la décompilation. AndroidManifest.xml mais apktool et Jadx ne montrent pas une game_display_name:allowBackup=... l'entrée.

Peu importe les entrées de allowBackup que vous avez, la seule entrée qui compte est celle qui se trouve dans l'onglet <application> étiquette. Voir la documentation Android : https://developer.Android.com/guide/topics/manifest/application-element#allowbackup

L'autre peut être ajoutée par les développeurs parce qu'ils n'ont pas lu attentivement la documentation.

Cependant, le jeu auquel vous faites référence a une deuxième entrée pertinente pour la sauvegarde : android:fullBackupContent :

Cet attribut pointe vers un fichier XML qui contient des règles de sauvegarde complète pour la sauvegarde automatique. Ces règles déterminent quels fichiers sont sauvegardés.

Lorsque je regarde ce fichier XML, je vois le contenu suivant :

<?xml version="1.0" encoding="utf-8"?>
<full-backup-content>
    <exclude domain="sharedpref" path="appsflyer-data" />
</full-backup-content>

D'après ce que je comprends de ce format de fichier, cela signifie que le(s) fichier(s) en /data/data/com.ironhorsegames.idlewasteland/shared_prefs/appsflyer-data* sont exclus de la sauvegarde.

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