Est-il possible d'afficher le fichier Androidmanifest.xml
?
Je viens de changer l'extension du fichier apk
en Zip
. Ce fichier Zip
contient le fichier Androidmanifest.xml
. Mais je ne peux pas voir le contenu de Androidmanifest.xml
. Il est entièrement crypté.
Comment afficher le fichier Androidmanifest.xml
?
Oui, vous pouvez afficher les fichiers XML
d'un fichier Android APK
. Il existe un outil pour cela: Android-apktool
C'est un outil de reverse engineering 3rd party, applications binaires Android fermées
Comment faire cela sur votre système Windows:
Maintenant, copiez le fichier APK
également dans ce répertoire et exécutez la commande suivante dans l'invite de commande:
apktool d HelloWorld.apk ./HelloWorld
Cela créera un répertoire "HelloWorld
" dans votre répertoire actuel. À l'intérieur, vous trouverez le fichier AndroidManifest.xml
au format déchiffré et d'autres fichiers XML
dans le répertoire "HelloWorld/res/layout"
.
Here HelloWorld.apk
est votre fichier Android APK.
Voir la capture d'écran ci-dessous pour plus d'informations:
Android Studio peut maintenant montrer cela. Allez à Build
> Analyze APK...
et sélectionnez votre apk. Ensuite, vous pouvez voir le contenu du fichier AndroidManifset.
Dans ce thread , Dianne Hackborn nous dit que nous pouvons extraire des informations du manifeste Android à l’aide de aapt.
J'ai fouetté cette commande unix rapide pour saisir les informations de version:
aapt dump badging my.apk | sed -n "s/.*versionName='\([^']*\).*/\1/p"
aapt d xmltree com.package.apk AndroidManifest.xml
va vider le AndroidManifest.xml
de l'APK spécifié. Ce n'est pas sous forme XML, mais vous pouvez toujours le lire.
aapt
(Android Asset Packaging Tool) est un outil intégré fourni avec le SDK Android.
Google vient de publier un outil open source multiplateforme pour inspecter les fichiers APK (parmi beaucoup d'autres formats Android binaires):
ClassyShark est un outil d'inspection binaire autonome pour les développeurs Android. Il peut parcourir de manière fiable n’importe quel exécutable Android et afficher des informations importantes telles que les interfaces et membres de classe, le nombre dex et les dépendances. ClassyShark prend en charge plusieurs formats, y compris les bibliothèques (.dex, .aar, .so), les exécutables (.apk, .jar, .class) et tous les XML binaires Android: AndroidManifest, ressources, mises en page, etc.
Vous pouvez utiliser cette commande: save to file AndroidManifest.txt
aapt dump xmltree gmail.apk AndroidManifest.xml > AndroidManifest.txt
AXMLParser et APKParser.jar peuvent également faire le travail, vous pouvez voir le lien. AXMLParser
Il existe un outil en ligne qui vous permet de télécharger un fichier APK. Il le décompile et vous permet enfin de télécharger un fichier Zip contenant toutes les sources, un fichier XML manifeste, etc., le tout sans avoir à installer aucun programme sur votre ordinateur: http://www.javadecompilers.com/apk
Aussi, si vous souhaitez simplement vérifier certains paramètres, vous pouvez, par leur interface utilisateur
Vous pouvez également utiliser mon application, App Detective pour afficher le fichier manifeste de toute application installée sur votre appareil.
Aapt2, inclus dans les outils de génération du SDK Android, peut le faire - aucun outil tiers n'est requis.
$(Android_SDK)/build-tools/28.0.3/aapt2 d --file AndroidManifest.xml app-foo-release.apk
Vous pouvez utiliser apkanalyzer
, la version en ligne de commande de APK Analyzer fournie avec le SDK Android. Il suffit d'exécuter la commande suivante sur la CLI:
/path/to/Android-sdk/tools/bin/apkanalyzer manifest print /path/to/app.apk
Il vous suffit de remplacer /path/to/Android-sdk
par le chemin correct de votre version du SDK Android et /path/to/app.apk
par le chemin de votre fichier APK.
Ceci est un vieux fil, mais je pensais mentionner, que votre téléphone a une racine, vous pouvez le voir directement sur votre téléphone en utilisant l’application root Explorer. Vous n'avez même pas besoin de l'extraire pour voir.
Pour décoder le fichier AndroidManifest.xml
en utilisant axmldec :
axmldec -o output.xml AndroidManifest.xml
ou
axmldec -o output.xml AndroidApp.apk
Le fichier doit être décompilé (ou deodex ne sait pas lequel). Mais voici une autre façon de le faire:
-Download free Tickle My Android tool on XDA: https://forum.xda-developers.com/showthread.php?t=1633333https://forum.xda-developers.com/showthread.php?t=1633333
-Unzip
-Copy APK into \_WorkArea1\_in\ folder
-Open "Tickle My Android.exe"
-Theming Menu
-Decompile Files->Any key to continue (ignore warning)
-Decompile Files->1->[Enter]->y[Enter]
-Wait for it to decompile in new window... Done when new window closes
-Decompiled/viewable files will be here: \_WorkArea3\_working\[App]\