Existe-t-il un moyen d'extraire et d'afficher le contenu d'un fichier .apk?
Existe-t-il un moyen d'extraire et d'afficher le contenu d'un fichier .apk?
Réponses:
En fait, le fichier apk n'est qu'une archive zip, vous pouvez donc essayer de renommer le fichier theappname.apk.zip
et de l'extraire avec n'importe quel utilitaire zip (par exemple 7zip).
Le androidmanifest.xml
fichier et les ressources seront extraits et peuvent être visualisés alors que le code source n'est pas dans le package - juste le fichier .dex compilé ("Dalvik Executable")
Pendant que la décompression révélera les ressources, le AndroidManifest.xml
sera encodé.apktool
peut - entre autres choses - décoder également ce fichier.
Pour décoder l'application App.apk
dans le dossier App
, exécutez
apktool decode App.apk App
apktool
n'est pas inclus dans le SDK Android officiel, mais disponible en utilisant la plupart des référentiels de paquets.
Il y a aussi des zzos . (Divulgation complète: je l'ai écrit). Il ne décompile que les ressources réelles, pas la partie dex ( baksmali , que je n'ai pas écrit, fait un excellent travail de gestion de cette partie).
Zzos est beaucoup moins connu que apktool, mais il y a des APK qui sont mieux gérés par celui-ci (et vice versa - plus à ce sujet plus tard). La plupart du temps, les APK contenant des types de ressources personnalisés (pas des modificateurs) n'ont pas été gérés par apktool la dernière fois que j'ai vérifié, et sont gérés par zzos. Il existe également des cas d'échappements que zzos gère mieux.
Du côté négatif des choses, zzos (version actuelle) nécessite quelques outils de support pour être installé. Il est écrit en perl (par opposition à APKTool, qui est écrit en Java), et utilise aapt pour la décompilation réelle. Il ne décompile pas encore les ressources d'attribut (ce que fait APKTool).
La signification du nom est «aapt», le compilateur de ressources d'Android, décalé d'une lettre vers le bas.
4 façons suggérées pour ouvrir les fichiers apk:
1. ouvrez le fichier apk par Android Studio (pour la photo, code java et analysez la taille) de la meilleure façon
2. ouvert par les applications winRar, 7zip, etc (Juste pour voir les photos et ...)
3.utiliser les compilateurs javadecompilers du site Web (pour les photos et le code java)
4. utilisez les outils APK (pour la photo et le code java)
unzip my.apk
Cela fait l'affaire à partir de la ligne de commande Linux car le format APK n'est qu'un fichier ZIP en haut.
Il existe un décompilateur en ligne pour les apks Android
http://www.decompileandroid.com/
Télécharger l'apk depuis une machine locale
Attends quelques instants
télécharger le code source au format zip.
Décompressez-le, vous pouvez afficher toutes les ressources correctement mais tous les fichiers java ne sont pas correctement décompilés.
Pour plus de détails, visitez cette réponse
Selon la raison pour laquelle vous souhaitez extraire l'APK, APK Analyzer peut être suffisant. Il vous montre les répertoires et la taille des fichiers. Il affiche également le nombre de méthodes regroupées par package dans lequel vous pouvez explorer.
APK Analyzer est intégré à Android Studio. Vous pouvez y accéder depuis le menu supérieur, Build -> Analyze APK.
Vous pouvez également utiliser Jadx - https://github.com/skylot/jadx . J'ai utilisé tous les outils mentionnés dans cette page et j'ai trouvé que Jadx fonctionne le mieux. Le fichier manifeste et les autres fichiers de classe sont convertis au format lisible autant que possible par cet outil.
PS - http://www.javadecompilers.com/apk utilise également le décompilateur jadx pour faire le même travail en ligne. Plus simple si vous souhaitez désarchiver un seul apk.
À votre santé!
Vous pouvez également voir le contenu d'un fichier APK dans l'appareil Android lui-même, ce qui aide beaucoup au débogage.
Tous les fichiers, y compris le manifeste d'une application, peuvent être consultés et également partagés par e-mail, cloud, etc., sans enracinement requis. L'application est disponible à partir de:
https://play.google.com/store/apps/details?id=com.dasmic.android.apkpeek
Avertissement: je suis l'auteur de cette application.
Le scanner APK peut afficher les informations du fichier APK sur PC.
également, peut être extrait un fichier apk de l'appareil Android.
Et peut être lié à d'autres outils (JADX-GUI, JD-GUI ...)