в зависимости от вашего состояния, если ваш Android APK:
Условие 1: НЕ затвердевать (от Tencent Legu / Qihoo 360 /...)
Выбор1: с использованием онлайн-сервиса
, таких как:
с использованием www.javadecompilers.com
Гото:
для автоматического декодирования из apk в исходный код java
шаги:
upload
apk file + нажмите Run
+ подождите некоторое время + нажмите Download
, чтобы получить zip + unzip ->
sources/com/{yourCompanyName}/{yourProjectName}
ваш ожидаемый исходный код Java
Choice2: декомпилировать / взломать самостоятельно
Используйте соответствующий инструмент для декомпиляции / взлома самостоятельно:
использовать jadx
/ jadx-gui
конвертировать apk
в java sourcecode
скачать jadx-0.9.0.zip , затем распаковать, чтобы получить bin/jadx
, затем:
- режим командной строки:
- в работе терминала:
jadx-0.9.0/bin/jadx -o output_folder /path_to_your_apk/your_apk_file.apk
- output_folder покажет декодированные
sources
и resources
sources/com/{yourCompanyName}/{yourProjectName}
ваш ожидаемый java sourcecode
- режим графического интерфейса
- двойной щелчок для запуска
jadx-0.9.0/bin/jadx-gui
(Linux jadx-gui.sh
/ Windows jadx-gui.bat
)
- открыть
apk
файл
- это будет автоматическое декодирование -> увидеть ожидаемый исходный код Java
save all
или save as Gradle project
например:
Состояние 2: отвердение (от Tencent Legu / Qihoo 360 /...)
основной метод 3 steps
:
apk/app to dex
dex to jar
jar to java src
подробное объяснение:
Шаг 1: apk/app to dex
использовать инструмент (FDex2
/ DumpDex) для выгрузки / извлечения (одного или нескольких) dex
файла из запущенного приложения
шаги:
подготовить среду
- a
root
ed android
- реальный телефон
- или эмулятор
- установи свой андроид apk
- установлен Xposed Installer
- установить
FDex2
/ DumpDex в XPposed и включить его
- Примечание: необходимо перезагрузить Xposed для работы FDex2
- FDex2 адрес загрузки, китайский :
- установить ваш Android APK на телефон / эмулятор
выгрузить dex
из запущенного приложения
Шаг 2: dex to jar
использовать инструмент (dex2jar
) для преобразования (специфическая, содержащая логику приложения) dex
файл в jar
файл
скачать dex2jar получил dex-tools-2.1-SNAPSHOT.zip , распаковать получил dex-tools-2.1-SNAPSHOT/d2j-dex2jar.sh
, затем
sh dex-tools-2.1-SNAPSHOT/d2j-dex2jar.sh -f your_dex_name.dex
например:
dex-tools-2.1-SNAPSHOT/d2j-dex2jar.sh -f com.xxx.yyy8825612.dex
dex2jar com.xxx.yyy8825612.dex -> ./com.xxx.yyy8825612-dex2jar.jar
Шаг 3: jar to java src
используйте один из инструментов:
конвертировать jar
в java src
для преобразования из jar в java src:
Jadx
> Procyon
> CRF
>> JD-GUI
поэтому рекомендуем использовать: Jadx
/ jadx-gui
шаги:
- двойной щелчок для запуска
jadx-gui
- открыть
dex
файл
File
-> save all
например:
экспортированный Java-источник:
Более подробное объяснение можно посмотреть в моей онлайн-книге Китайский учебник: