Jak wyświetlić zawartość pliku APK na Androida?

Odpowiedzi:

125

W rzeczywistości plik apk jest po prostu archiwum zip, więc możesz spróbować zmienić nazwę pliku theappname.apk.zipi wyodrębnić go za pomocą dowolnego narzędzia zip (np. 7zip).

androidmanifest.xmlPlików i zasoby zostaną wyodrębnione i mogą być przeglądane podczas gdy kod źródłowy nie jest w opakowaniu - wystarczy skompilowany .dex plik ( „Dalvik Executable”)

DonGru
źródło
37

Jest teraz dostarczany z Android Studio. Po prostu przejdź do Build / Analyze APK ... a następnie wybierz APK :)

wprowadź opis obrazu tutaj

TienLuong
źródło
14

Podczas rozpakowywania ujawni się zasoby, AndroidManifest.xmlzostaną one zakodowane. apktoolmoże - między innymi - również dekodować ten plik.

Aby zdekodować aplikację App.apkdo folderu App, uruchom

apktool decode App.apk App

apktool nie jest uwzględniony w oficjalnym pakiecie SDK systemu Android, ale jest dostępny w większości repozytoriów pakietów.

Jens Erat
źródło
10

Jest też zzos . (Pełne ujawnienie: napisałem to). Dekompiluje tylko rzeczywiste zasoby, a nie część dex ( baksmali , którego nie napisałem, świetnie radzi sobie z tą częścią).

Zzos jest znacznie mniej znany niż apktool, ale jest kilka plików APK, które są przez niego lepiej obsługiwane (i odwrotnie - więcej o tym później). Przeważnie pliki APK zawierające niestandardowe typy zasobów (nie modyfikatory) nie były obsługiwane przez apktool podczas ostatniego sprawdzania i są obsługiwane przez zzos. Istnieją również przypadki ucieczki, że zzos radzi sobie lepiej.

Z drugiej strony, zzos (obecna wersja) wymaga do zainstalowania kilku narzędzi pomocniczych. Jest napisany w perlu (w przeciwieństwie do APKTool, który jest napisany w Javie) i używa aapt do faktycznej dekompilacji. Nie dekompiluje również zasobów atrybutów (co robi APKTool).

Znaczenie nazwy to „aapt”, kompilator zasobów Androida, przesunięty o jedną literę w dół.

Shachar Shemesh
źródło
6

4 sugerowane sposoby otwierania plików APK:

1. otwórz plik apk przez Android Studio (dla zdjęć, kodu java i rozmiaru analizy) w najlepszy sposób

wprowadź opis obrazu tutaj

2. otwarte przez aplikacje winRar, 7zip itp (tylko po to, aby zobaczyć zdjęcia i ...)

3. użyj strony internetowej javadecompilers (dla zdjęć i kodu java)

4. użyj narzędzi APK (dla zdjęć i kodu java)

Rasoul Miri
źródło
6

unzip my.apk

To załatwia sprawę z wiersza poleceń Linuksa, ponieważ format APK to tylko plik ZIP na górze.

Ciro Santilli 郝海东 冠状 病 六四 事件 法轮功
źródło
3

Istnieje internetowy dekompilator dla aplikacji na Androida

http://www.decompileandroid.com/

Prześlij plik APK z komputera lokalnego

Poczekaj chwilę

pobierz kod źródłowy w formacie zip.

Rozpakuj go, możesz poprawnie wyświetlić wszystkie zasoby, ale wszystkie pliki java nie są poprawnie zdekompilowane.

Aby uzyskać szczegółowe informacje, odwiedź tę odpowiedź

Zar E Ahmer
źródło
2

W zależności od powodu, dla którego chcesz wyodrębnić pakiet APK, może wystarczyć narzędzie APK Analyzer. Pokazuje katalogi i rozmiary plików. Pokazuje również liczby metod pogrupowane według pakietu, do których można przejść.

APK Analyzer jest wbudowany w Android Studio. Możesz uzyskać do niego dostęp z górnego menu, Build -> Analyze APK.

eliasbagley
źródło
2

W przypadku aplikacji hybrydowych opracowanych przy użyciu cordova i angularjs możesz:

1) Zmień nazwę pliku .apk na .zip
2) Rozpakuj / rozpakuj zawartość
3) W folderze zasobów otrzymasz folder www

Kailas
źródło
1

Możesz także skorzystać z Jadx - https://github.com/skylot/jadx . Użyłem wszystkich narzędzi wymienionych na tej stronie i stwierdziłem, że Jadx działa najlepiej. Plik manifestu i inne pliki klas są konwertowane do formatu czytelnego w miarę możliwości przez to narzędzie.

PS - http://www.javadecompilers.com/apk również używa dekompilatora jadx do wykonania tej samej pracy online. Prostsze, jeśli chcesz przywrócić z archiwum pojedynczy plik APK.

Twoje zdrowie!

Monal Jain
źródło
0

Możesz również zobaczyć zawartość pliku APK na samym urządzeniu z Androidem, co bardzo pomaga w debugowaniu.

Wszystkie pliki, w tym manifest aplikacji, można wyświetlać, a także udostępniać za pomocą poczty e-mail, chmury itp., Bez konieczności rootowania. Aplikacja jest dostępna pod adresem:

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

Zastrzeżenie: jestem autorem tej aplikacji.

cbelwal
źródło
0

APK Scanner może wyświetlić informacje o pliku APK na PC.
można również pobrać plik apk z urządzenia z systemem Android.
I może być linkami do innych narzędzi. (JADX-GUI, JD-GUI ...)

wprowadź opis obrazu tutaj

Sunggyu Kam
źródło