Je voudrais prendre une application installée, y compris ses données, à partir d'un appareil Android enraciné et en produire un APK adapté à l'installation sur un appareil Android non enraciné.
Est-ce possible?
Modifier: les réponses / commentaires existants semblent renforcer l'idée que les applications existantes ne prennent pas en charge l'intégration des données d'une application dans un APK. La question la plus fondamentale est peut-être de savoir si un fichier APK incorporé est destiné à /data/data/[appname]
, ou est-il limité à être autonome lorsqu'il est installé?
Remarques:
- J'ai supposé que, si c'était possible, cette fonctionnalité serait intégrée à une application telle que Titanium Backup. Titanium Backup peut sauvegarder les données app + dans un seul fichier, mais ce fichier n'est pas un APK et ne peut être restauré que par Titanium Backup lui-même - ce qui ne m'aide pas car l'appareil de destination n'est pas enraciné et ne peut donc pas exécuter TB.
- Les solutions qui nécessitent l'utilisation du terminal sur le téléphone ou ADB sont très bien.
Merci.
applications
backup
apk
Ian Renton
la source
la source
.apk
plaine (vous pouvez donc au moins le prendre). J'ai besoin de regarder dans les fichiers de données; AFAIR, il s'agissait simplement de propriétés stockées, mais je ne me souviens pas du format utilisé. Cependant, la restauration des données sur un appareil non rooté est probablement très difficile à réaliser pour la même raison que la sauvegarde: aucun accès aux dossiers de données ...Réponses:
Après avoir lu plus sur le format de fichier APK, je pense que je peux maintenant répondre en toute sécurité à ma propre question avec "c'est impossible".
Un fichier APK ne contient pas de structure de données qui est «décompressée» lors de l'installation comme les packages utilisés par exemple par la plupart des distributions Linux. Au lieu de cela, un APK est simplement un fichier JAR autonome et rebadgé qui contient le bytecode, le manifeste et le certificat de l'application et rien d'autre.
Le contenu de
/data/data/[appname]
est vraisemblablement créé par le code de l'application lors de sa première exécution (ou à un moment ultérieur), et il n'y a aucun moyen d'incorporer ces données dans un fichier APK afin que le système les déplace automatiquement vers la bonne destination au moment de l'installation.la source
/data/data/
sauf si l'application est programmée pour le faire elle-même.Vous pouvez toujours obtenir l'APK d'une application avec des applications comme ES File Explorer , AppMonster ou Titanium Backup . Mais je ne sais pas s'ils sauvegardent les données lors de la construction de l'APK.
la source
Allez sur le Play Store et téléchargez ML Manager pour extraire les fichiers Apk dans un dossier de votre choix. Je ne sais pas comment y inclure les données de l'application.
la source