Поиск по сайту

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

вкл. . Опубликовано в Android - Общее


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

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

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

Приступим!

Декомпиляция и Компиляция 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 приложения Андроид

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

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

Компиляция APK

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

apktool b  имя_проекта

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

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

  • build
  • dist

В папке dist будет находится готовое приложение:

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

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

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



Подпись APK

1. Для этого Вам надо разархивировать архив Sign Android

2. Скопировать готовое приложение в папку с распакованным Sign Android

3. Потянуть приложение на файл Sign_APK.bat после чего приложение будет подписано

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

Готовое подписанное приложение будет носить название 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, данное программа имеет графический интерфейс и очень легкая в использование.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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