Inżynieria odwrotna z pliku APK do projektu
Przypadkowo usunąłem swój projekt z Eclipse, a jedyne co mi pozostało to plik APK, który przeniosłem na mój telefon. Czy istnieje sposób na odwrócenie procesu eksportu aplikacji do.plik apk, żebym mógł odzyskać projekt?
10 answers
Istnieją dwa przydatne narzędzia, które generują kod Java (szorstki, ale wystarczająco dobry) z nieznanego pliku APK.
- Pobierz narzędzie dex2jar z dex2jar .
-
Użyj narzędzia do konwersji pliku APK do JAR:
$ d2j-dex2jar.bat demo.apk dex2jar demo.apk -> ./demo-dex2jar.jar
Po wygenerowaniu pliku JAR użyj JD-GUI , aby otworzyć plik JAR. Zobaczysz pliki Java.
Wyjście będzie podobne do:
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-02-13 14:06:33
Przede wszystkim polecam this
wideo may this is usuwa wszystkie Twoje wątpliwości
If not please go through
Procedure for decoding .apk files, step-by-step method:
Step 1:
Stwórz nowy folder i umieść .plik apk w nim (który chcesz rozszyfrować). Teraz zmień nazwę rozszerzenia tego pliku .apk
na .zip
(np.: Zmień nazwę z nazwy pliku.apk do nazwy pliku.apk.zip) i zapisać go.
Jeśli problemy w konwersji na .zip proszę link
Po uzyskaniu .zip teraz masz zajęcia.pliki dex itp. Na tym etapie możesz zobaczyć drawable, ale nie pliki xml i java, więc kontynuuj. Jeśli nie widzisz rozszerzenia przejdź przez sprawdź konfigurację
Step 2:
Teraz rozpakuj ten plik zip apk w tym samym folderze. Teraz pobierz dex2jar z tego link
I rozpakować go do tego samego folderu. Teraz otwórz wiersz polecenia i zmień katalog na ten folder.
Następnie napisz dex2jar classes.dex
i naciśnij enter. Teraz otrzymujesz classes.dex.dex2jar
plik w tym samym folderze.
Następnie pobierz Java decompiler
A teraz kliknij dwukrotnie JD-gui i kliknij Otwórz plik. Następnie otwórz classes.dex.dex2jar
Plik z tego folderu. Teraz dostajesz pliki klas i zapisujesz wszystkie te pliki klas (kliknij na plik, a następnie kliknij "Zapisz wszystkie źródła" w JD-gui) według nazwy src. Rozpakuj ten plik zip (classes_dex2jar.src.zip)
, a otrzymasz wszystkie pliki java aplikacji.
Na tym etapie dostajesz źródło Javy, ale pliki xml są nadal nieczytelne, więc kontynuuj.
Step 3:
Teraz otwórz nowy folder i umieść te pliki
-
Put .plik apk, który chcesz rozszyfrować
Pobierz Apktool dla
windows v1.x
orazApktool
Zainstaluj okno za pomocą google i umieść w tym samym folderze
-
Pobierz plik framework-res. apk za pomocą google i umieścić w tym samym folderze (nie wszystkie pliki apk muszą framework-plik res. apk)
-
Otwórz okno poleceń
Przejdź do katalogu głównego APKtool i wpisz następujące polecenie:
apktool if framework-res.apk.
Powyższe polecenie powinno skutkować Framework installed ...
.
- apktool d "appName".apk ("appName" oznacza aplikację, którą chcesz dekodować) teraz masz folder plików w tym folderze, a teraz możesz łatwo odczytać pliki xml również.
Step 4:
Wreszcie mamy res/
również jako kod java projektu, który jest naszym celem na początku.
P.S.
Jeśli nie możesz uzyskać folderu res w powyższych krokach, zainstaluj nowyapktool
- czy Java 1.7 jest zainstalowana? Zainstaluj Apktool 2.x
- czy Java 1.6 lub wyższa jest zainstalowana? Zainstaluj Apktool 1.x
Enjoy and happy coding
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-08-06 06:43:28
No software & No too much steps..
Po prostu prześlij swój APK & uzyskać wszystkie zasoby z tej strony..
Https://www.apkdecompilers.com/
Ta strona będzie dekompilować kod osadzony w plikach APK i wyodrębnić wszystkie inne zasoby w pliku.
Uwaga: dekompiluję mój plik APK i otrzymuję kod w ciągu jednej miniuty z tej strony
Aktualizacja 1:
I found another online decompiler site,
Http://www.javadecompilers.com/apk/ - nie działa bez przerwy z pytaniem o blokowanie popup
Aktualizacja 2:
Znalazłem aplikację dekompilatora apk w Sklepie play,
Https://play.google.com/store/apps/details?id=com.njlabs.showjava
Możemy dekompilować pliki apk w naszym telefonie z Androidem. a także możemy w stanie przeglądać pliki java & xml w tej aplikacji
Aktualizacja 3:
Możemy użyć innej opcji Analizuj funkcję APK z wersji Android studio 2.2
Build - > Analyze APK - > Select your APK - > it give results
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-10-11 06:10:27
Niezupełnie. Istnieje wiele pakietów Dex disassembler/decompiler , takich jak smali lub dex2jar, które generują półprzezroczyste wyjście (w przypadku dex2jar, możesz uzyskać kod Javy za pomocą czegoś takiego jak JD-GUI, ale proces nie jest doskonały i jest bardzo mało prawdopodobne, że będziesz w stanie w 100% odtworzyć swój kod źródłowy. Może to jednak potencjalnie dać ci miejsce do rozpoczęcia przebudowy drzewa źródeł.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-10-04 17:54:38
Jest na to nowy sposób.
Android Studio 2.2 ma analizator APK, który da wiele informacji o apk, sprawdź go tutaj: - http://android-developers.blogspot.in/2016/05/android-studio-22-preview-new-ui.html
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-06-14 06:38:38
Tak, możesz odzyskać swój projekt. Po prostu zmień nazwę pliku yourproject.apk
na yourproject.zip
, a otrzymasz wszystkie pliki w tym pliku ZIP. Zmieniamy rozszerzenie pliku z .apk do .zip. Z tego pliku ZIP rozpakuj plik classes.dex
i dekompiluj go w następujący sposób.
Najpierw potrzebujesz narzędzia do rozpakowania wszystkich (skompilowanych) klas w DEX - ie do JAR-a. Jest jeden o nazwie dex2jar , który jest wykonany przez chińskiego studenta.
Następnie możesz użyć JD-GUI do dekompilacji klasy w JAR do kodu źródłowego. Uzyskany kod źródłowy powinien być dość czytelny, ponieważ dex2jar stosuje pewne optymalizacje.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-02-18 20:43:21
Wykonaj poniższe kroki, aby to zrobić lub po prostu użyj apktojava gem w tym procesie, nawet dba o instalację wymaganych narzędzi do pracy.
- Konwertuj plik apk na zip
- rozpakuj plik
- wyodrębnij klasy.dex from it
- użyj dex do jar do konwersji klas.dex do pliku jar
- użyj jadx gui, aby otworzyć plik JAR jako kod źródłowy Javy
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-01-31 06:24:38
Dla Platformy Android, można spróbować ShowJava, dostępne w Sklepie Play.
Wygenerowany kod można sprawdzić za pomocą interfejsu aplikacji, a wygenerowane pliki i struktura folderów java są przechowywane w folderze ShowJava
w folderze /sdcard
, obok pliku wynikowego .jar
z konwersji.
Aplikacja jest darmowa z banerem reklamowym u dołu głównego widoku, ale istnieje opcja zakupu w aplikacji (3,99$), aby go usunąć. Zakup w aplikacji nie dodaje żadnych funkcji obok usunięcia banera reklamowego.
Ujawnienie: nie jestem twórcą aplikacji ani nie jestem związany z nim w żaden sposób.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-04-24 11:12:42
Jeśli szukasz profesjonalnej alternatywy, zajrzyj do Jeb Decompiler z PNF Software.
Istnieje wersja demo, która pozwoli Ci dekompilować większość kodu.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-05-06 16:25:35
Poniżej znajdują się niektóre z narzędzi, których możesz użyć do wykonania inżynierii odwrotnej z pliku APK do kodu źródłowego:
- Dex2jar
- Java decompiler
- Apktool
- Analizator Apk
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-07-20 09:28:12