Декомпиляция и Компиляция APK приложения Android (Видео)

Для того чтобы редактировать APK приложения. Прежде всего их нужно декомпилировать, а после скомпилировать! Как это сделать и чем можно узнать в этом уроке.

В прошлом уроке вы узнали из чего состоят основные внутренности приложения, а также что данные что APK приложения (в дальнейшем просто APK) можно открыть архиватором, но что либо изменить у вас не получиться! Нужна  Декомпиляция APK приложения Android!

Приступим!

Содержание:

  1. Необходимые инструменты
  2. Настройка
  3. Декомпиляция приложения с помощью Apktool через командную строку
  4. Компиляция приложения с помощью Apktool через командную строку
  5. Что необходимо чтобы работать с системными APK
  6. Графические надстройки утилиты ApkTool

Декомпиляция и Компиляция APK приложения Android
Необходимые компоненты

  1. Java JDK — среда разработки;
  2. ApkTool — программа декомпилятор;
  3. ApkTool.bat — bat файл;
  4. Sign Android — подпись приложения APK.

 

Настройка Java

После установки Java JDK , необходимо, добавить ее в переменную Windows. Если кто не понял официальное куроводство то,

Скопируйте путь Java JDK:декомпиляция apk

Перейдите в меню Дополнительные настройки:

(Мой) Компьютер ->Свойства системы->Дополнительные параметры системы->Дополнительно->Системные переменные->Правкадекомпиляция apk

Java JDK настроена!

Настройка ApkTool

  1. Создать папку на диске C:\ и в нее переместить файлы apktool_x_x.jar и apktool.bat
  2. Файл apktool_x_x.jar переименовать в apktool.jar

Если появилось наподобие такой вывод информации, то все сделано правильно.

Декомпиляция APK

Чтобы  декомпилировать приложение, скопируйте файл APK приложения в папку где находится apktool, далее необходимо выполнить вот что, в командной строке ввести команду:

apktool d название.apk

Например:

apktool d browser.apk

Декомпиляция и Компиляция APK приложения AndroidДекомпиляция APK завершена.

После того как вы отредактируете или русифицируете APK, его надо компилировать обратно.

Компиляция APK

Вводим в командной строке:

apktool b  имя_проектаДекомпиляция и Компиляция APK приложения Android

После чего перейдите в папку проекта ( в данном случае папка browser) и вы увидете две новые папки:

  • build
  • dist

В папке dist будет находится готовое приложение:Декомпиляция и Компиляция APK приложения Android

Если папки dist не обнаружили, значит apktool не смог собрать редактируемый проект, причиной тому может быть то, что имения которые вы вносили(«поломали») не позволяют собрать приложение apk.

После компиляции приложения apk его необходимо подписать.

Подпись APK

  1. Для этого Вам надо разархивировать архив Sign Android;
  2. Скопировать готовое приложение в папку с распакованным Sign Android;
  3. Потянуть приложение на файл Sign_APK.bat после чего приложение будет подписано!

Декомпиляция и Компиляция APK приложения Android

Готовое подписанное приложение будет носить название apk_signed.apk

Приложение подписано!

Работа с системными APK

Для того чтобы модифицировать системные приложения необходимо прежде всего необходимо скормить программе APKTOOL системный файл framework -res.apk который находиться в системном разделе Android:

/system/framework/framework -res.apk

Для того чтобы скормить Apktool данный файл необходимо, ввести команду:

apktool if framework -res.apk

Учитывайте что, команду нужно вводить относительно пути расположения, то есть если файл framework -res.apk находиться в папке C:\primer, то команда будет выглядеть следующим обзором:

apktool if  С:\primer\framework -res.apk

Также для того чтобы можно было модифицировать системные файлы прошивка должна быть вначале Deodex-ирована.

 

Теперь как это можно все упросить! (не использовать командную строку)

Скачайте приложение SmartApkTool, данное программа имеет графический интерфейс и очень легкая в использование. Автор данной программы мой хороший друг Никита Коровкин (на данный момент работает в Surfingbird)! за что ему огромное Спасибо!

Как пользоваться SmartApkTool

Прежде всего вам надо установить и настроить Java JDK и Apktool как указано выше.

Откройте программу SmartApkTool

Если Вам необходимо Декомпилировать приложение в SmartApkTool, то выберите данный пункт и необходимое приложение

декомпиляция apk

Если компилировать, то

декомпиляция apk

и выбрать файл в проекте apktool.yml

NoName1.1

Для подписи приложения APK, нажать обзор, выбрать приложение и подписать

NoName

Все так легко и просто!

 

Альтернативный вариант

Для тех кому не понравился SmartApkTool, есть альтернатива Android MultiTool 

ANDROID MULTITOOL