Juste pour la référence des autres, voici quelques informations sur le format de fichier .ab.
Le fichier de sauvegarde Android (* .ab) est un fichier TAR compressé . Il est compressé à l'aide de l' algorithme DEFLATE . En plus de cela, il peut y avoir un cryptage AES utilisé. Ceci est déterminé lors de la création de la sauvegarde. Si vous entrez un mot de passe, la sauvegarde est cryptée, sinon; il n'y a pas de cryptage, il est seulement compressé.
L'en-tête du fichier est un peu différent d'une archive DEFLATE normale. Il contient des informations sur la sauvegarde et se présente comme suit:
ANDROID BACKUP
1
1
none
La première ligne est la ligne "Magic" . La ligne suivante est la version du format de fichier de sauvegarde Android. La ligne suivante est un booléen (vrai ou faux, 1 ou 0) indiquant si le fichier est compressé. La dernière ligne est le type de cryptage. Cet exemple n'utilise aucun chiffrement. S'il y avait un mot de passe, la ligne se lirait "AES-256". Après c'est le chiffrement de chiffrement. S'il n'y a pas de mot de passe, "l'archive" DEFLATE démarre.
Il est compressé à l'aide de Java Deflater . Du point de vue des développeurs, cela pose des problèmes si vous souhaitez utiliser quelque chose en plus de Java pour l'extraire. Je n'ai pas été capable de trouver quoi que ce soit qui puisse le dégonfler en utilisant le même algorithme, même si tout ce que j'ai trouvé (comme C #) est supposé suivre le "SPEC".
Cela dit, il existe un projet open source sous licence Apache 2.0, écrit par Nikolay Elenkov, qui vous permettra d'extraire le fichier .ab dans un fichier tar.
Usage:
java -jar abe.jar unpack <backup.ab> <backup.tar> <password>
Si vous ne savez pas vraiment comment l'utiliser (ce qui dépasse le cadre de cette réponse), la prochaine version de Droid Explorer v0.8.8.7 ( disponible ici ) vous permettra de faire exactement cela, et plus encore, directement depuis Explorer. Vous pouvez en savoir plus sur les fonctionnalités de mon blog (oui, je sais, plug éhonté. Je le fais quand ça correspond à la question)