Как просмотреть содержимое файла APK для Android?

Есть ли способ извлечь и просмотреть содержимое файла .apk?

Ответ 1

На самом деле файл apk - это просто zip-архив, поэтому вы можете попробовать переименовать файл в theappname.apk.zip и извлечь его с помощью любой zip-утилиты (например, 7zip).

Файл androidmanifest.xml и ресурсы будут извлечены и могут быть просмотрены, тогда как исходный код отсутствует в пакете - только скомпилированный .dex файл ( "Dalvik Executable" )

Ответ 2

Существует также zzos. (Полное раскрытие: я это написал). Он только декомпилирует фактические ресурсы, а не часть dex (baksmali, которую я не написал, отлично справляется с обработкой этой части).

Zzos гораздо менее известен, чем apktool, но есть некоторые APK, которые лучше обрабатываются им (и наоборот - подробнее об этом позже). В основном APK, содержащие пользовательские типы ресурсов (не модификаторы), не обрабатывались apktool в последний раз, когда я проверял, и обрабатываются zzos. Есть также некоторые случаи с ускорением, что zzos обрабатывает лучше.

В отрицательной стороне вещей zzos (текущая версия) требует нескольких инструментов поддержки для установки. Он написан в perl (в отличие от APKTool, который написан на Java) и использует aapt для фактической декомпиляции. Он также еще не декомпилирует атрибуты ресурсов (что делает APKTool).

Значение имени - "aapt", компилятор ресурсов Android, сдвинутый на одну букву.

Ответ 3

Пока распаковка откроет ресурсы, AndroidManifest.xml будет закодирован. apktool может - среди множества других вещей - также декодировать этот файл.

Чтобы декодировать приложение App.apk в папку App, запустите

apktool decode App.apk App

apktool не входит в официальный Android SDK, но доступен с использованием большинства репозиториев пакетов.

Ответ 5

Теперь он поставляется с Android Studio. Просто перейдите в Build/Analyze APK..., затем выберите APK:)

введите описание изображения здесь

Ответ 6

В зависимости от вашей причины, требующей извлечь APK, APK Analyzer может быть достаточным. Он показывает каталоги и размеры файлов. Он также показывает подсчеты методов, сгруппированные по пакету, которые вы можете развернуть.

Анализатор APK встроен в Android Studio. Вы можете получить доступ к нему из верхнего меню, Build → Analyze APK.

Ответ 7

Существует онлайн-декомпилятор для Android-андроидов

http://www.decompileandroid.com/

Загрузить apk с локального компьютера

Подождите несколько минут

скачать исходный код в формате zip.

Разархивируйте его, вы можете правильно просмотреть все ресурсы, но все java файлы неправильно декомпилированы.

Для получения полной информации посетите этот ответ

Ответ 8

Вы также можете использовать Jadx - https://github.com/skylot/jadx. Я использовал все инструменты, упомянутые на этой странице, и обнаружил, что Jadx работает лучше всего. Файл манифеста и другие файлы классов преобразуются в удобочитаемый формат в максимально возможной степени с помощью этого инструмента.

PS - http://www.javadecompilers.com/apk также использует декомпилятор jadx для выполнения той же работы в Интернете. Упрощен, если вы хотите разблокировать один apk.

Ура!

Ответ 9

unzip my.apk

сделает трюк из командной строки Linux.