Статья Влезаем в игры и приложения - Руководство по использованию APKTOOL.

Sokomotoz

Участник
Статус
offline
Регистрация
08.07.2019
Сообщения
26
Репутация
21
Здравствуйте!
APKTool
- это мощный инструмент, который позволяет декомпилировать и перекомпилировать файлы Android APK для различных целей, включая отладку, анализ и модификацию приложений.
В этой статье мы подробно рассмотрим, как использовать APKTool.

Установка APKTool.

APKTool работает на любой системе, поддерживающей Java, такой как Windows, Linux или MacOS.

Убедитесь, что у вас установлена Java версии 7 или выше.
apktool-logo_151x55.png

  1. Скачайте последнюю версию APKTool со страницы Github(https://ibotpeaches.github.io/Apktool/install/).
  2. Распакуйте архив в удобное для вас место.
  3. Добавьте APKTool в ваш PATH, чтобы вы могли запускать его из любого каталога.
В Linux и MacOS это можно сделать, добавив следующую строку в файл .bashrc или .bash_profile:

export PATH=$PATH:/путь/к/вашему/apktool

В Windows добавьте путь к APKTool в системную переменную PATH через меню "Система" -> "Дополнительные параметры системы" -> "Переменные среды".

Так же в
Linux вы можете установить её следующей командой:

sudo apt install apktool

Декомпиляция APK-файлов.

Декомпиляция - это процесс преобразования скомпилированного кода обратно в более читаемый формат.
APKTool может декомпилировать APK-файлы в smali-код, который является ближайшим аналогом исходного кода Java.

Для декомпиляции APK-файла выполните следующую команду:


apktool decode имявашегофайла.apk
(Пример: apktool d Test.apk)

Если у вас выдало ошибку, то можете попробовать написать так:

apktool decode -f -r имявашегофайла.apk
(Пример: apktool d -f -r Test.apk)

Редактирование APK-файлов.

После декомпиляции вы можете изменить код приложения. Изменения могут включать в себя всё, начиная от простых изменений в тексте и заканчивая сложными модификациями кода.
Обратите внимание, что для редактирования smali-кода потребуются знания языка smali. Но даже если вы его не знаете, вы можете использовать notepad++ и найти интересующие вас параметры в коде.


Перекомпиляция APK-файлов.

После того как вы сделали необходимые изменения, вы можете перекомпилировать приложение с помощью APKTool.

Это делается следующей командой:

apktool build имяпапкисдекомпилированнымкодом имяновогофайла.apk
(Пример: apktool b Test Test.apk)

Эта команда создаст новый APK-файл, который будет содержать все ваши изменения.

Подписывание APK-файлов.

Перед установкой нового APK-файла на Android-устройство, вы должны подписать его.

Это можно сделать с помощью утилиты jarsigner, входящей в состав JDK:

jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore my-release-key.keystore my_application.apk alias_name

Где:
  • my-release-key.keystore - это файл ключа, который вы используете для подписи приложения.
  • my_application.apk - это имя вашего APK-файла.
  • alias_name - это псевдоним ключа, который вы используете для подписи приложения.
После подписания APK-файл можно установить на устройство и запустить.

Если вы хотите подробнее ознакомиться с данной утилитой, то можете почитать про неё на официальной странице Github(https://ibotpeaches.github.io/Apktool/install/)

Спасибо уделенное время!