Wie kann ich den Inhalt einer Android APK-Datei anzeigen?

Antworten:

125

Eigentlich ist die apk-Datei nur ein Zip-Archiv, daher können Sie versuchen, die Datei in umzubenennen theappname.apk.zipund mit einem beliebigen Zip-Dienstprogramm (z. B. 7zip) zu extrahieren.

Die androidmanifest.xmlDatei und die Ressourcen werden extrahiert und können angezeigt werden, während sich der Quellcode nicht im Paket befindet - nur die kompilierte .dex-Datei ("Dalvik Executable")

DonGru
quelle
37

Es wird jetzt mit Android Studio ausgeliefert. Gehen Sie einfach zu APK erstellen / analysieren ... und wählen Sie dann Ihre APK aus :)

Geben Sie hier die Bildbeschreibung ein

TienLuong
quelle
14

Während beim Entpacken die Ressourcen angezeigt werden, AndroidManifest.xmlwerden die verschlüsselt. apktoolkann - unter anderem - auch diese Datei dekodieren.

Führen Sie aus, um die Anwendung App.apkin den Ordner zu dekodierenApp

apktool decode App.apk App

apktool ist nicht im offiziellen Android SDK enthalten, aber über die meisten Paket-Repositorys verfügbar.

Jens Erat
quelle
10

Es gibt auch zzos . (Vollständige Offenlegung: Ich habe es geschrieben). Es dekompiliert nur die tatsächlichen Ressourcen, nicht den Dex-Teil ( Baksmali , das ich nicht geschrieben habe, leistet hervorragende Arbeit bei der Handhabung dieses Teils).

Zzos ist viel weniger bekannt als apktool, aber es gibt einige APKs, die besser damit umgehen können (und umgekehrt - dazu später mehr). Meistens wurden APKs mit benutzerdefinierten Ressourcentypen (keine Modifikatoren) bei der letzten Überprüfung nicht von apktool verarbeitet und von zzos. Es gibt auch einige Fälle mit Flucht, die zzos besser handhabt.

Negativ zu vermerken ist, dass für die Installation von zzos (aktuelle Version) einige Support-Tools erforderlich sind. Es ist in Perl geschrieben (im Gegensatz zu APKTool, das in Java geschrieben ist) und verwendet aapt für die eigentliche Dekompilierung. Außerdem werden Attributressourcen noch nicht dekompiliert (was APKTool tut).

Die Bedeutung des Namens ist "aapt", der Ressourcen-Compiler von Android, der um einen Buchstaben nach unten verschoben wurde.

Shachar Shemesh
quelle
6

4 vorgeschlagene Möglichkeiten zum Öffnen von APK-Dateien:

1. Öffnen Sie die Apk-Datei von Android Studio (für Foto, Java-Code und analysieren Sie die Größe) am besten

Geben Sie hier die Bildbeschreibung ein

2. Öffnen Sie mit Anwendungen WinRar, 7zip usw. (Nur um Fotos zu sehen und ...)

3.Verwenden Sie Website- Javadecompiler (für Foto- und Java-Code)

4. Verwenden Sie APK Tools (für Foto- und Java-Code)

Rasoul Miri
quelle
6

unzip my.apk

Dies ist der Trick über die Linux-Befehlszeile, da das APK-Format nur eine ZIP-Datei oben ist.

Ciro Santilli 郝海东 冠状 病 六四 事件 法轮功
quelle
3

Es gibt einen Online-Dekompiler für Android-Apks

http://www.decompileandroid.com/

Laden Sie apk vom lokalen Computer hoch

Warten Sie einige Momente

Quellcode im Zip-Format herunterladen.

Entpacken Sie es, Sie können alle Ressourcen korrekt anzeigen, aber alle Java-Dateien werden nicht korrekt dekompiliert.

Für weitere Informationen besuchen Sie diese Antwort

Zar E Ahmer
quelle
2

Abhängig von Ihrem Grund, die APK extrahieren zu wollen, kann APK Analyzer ausreichend sein. Es zeigt Ihnen Verzeichnisse und Dateigrößen. Außerdem werden die nach Paket gruppierten Methodenzahlen angezeigt, in die Sie einen Drilldown durchführen können.

APK Analyzer ist in Android Studio integriert. Sie können über das Hauptmenü Build -> APK analysieren darauf zugreifen.

Eliasbagley
quelle
2

Bei Hybrid-Apps, die mit Cordova und AngularJs entwickelt wurden, können Sie:

1) Benennen Sie die APK-Datei in ZIP um.
2) Extrahieren / Entpacken des Inhalts.
3) Im Assets-Ordner erhalten Sie den WWW-Ordner

Kailas
quelle
1

Sie können auch Jadx verwenden - https://github.com/skylot/jadx . Ich habe alle auf dieser Seite genannten Tools verwendet und festgestellt, dass Jadx am besten funktioniert. Die Manifestdatei und andere Klassendateien werden von diesem Tool so weit wie möglich in ein lesbares Format konvertiert.

PS - http://www.javadecompilers.com/apk verwendet auch den Jadx-Dekompiler, um die gleiche Arbeit online zu erledigen. Einfacher, wenn Sie eine einzelne apk entarchivieren möchten.

Prost!

monal94
quelle
0

Sie können auch den Inhalt einer APK-Datei auf dem Android-Gerät selbst anzeigen, was beim Debuggen sehr hilfreich ist.

Alle Dateien, einschließlich des Manifests einer App, können per E-Mail, Cloud usw. angezeigt und auch geteilt werden, ohne dass ein Rooting erforderlich ist. App ist erhältlich bei:

https://play.google.com/store/apps/details?id=com.dasmic.android.apkpeek

Haftungsausschluss: Ich bin der Autor dieser App.

cbelwal
quelle