Привет Гость!
Ты можешь:
Войти или зарегистрироваться

Забыл пароль
Регистрация
Меню сайта
Главная страница Каталог файлов Всё для моддинга Новости Моды ПК игр Форум Flash игры/журналы Помощь сайту WAP/PDA версия сайта Мы вКонтакте
Категории
Уроки по модификации java [174]
Уроки по переводу java игр [15]
Программы для компьютера [100]
Программы для телефона [82]
Модификация смартфонных игр [15]
Symbian, Android, iPhone и т.д.
Прочее [35]
Уроки по модификации ПК игр [9]
Мини-чат
Главная » Статьи » Модификация смартфонных игр

10.01.2013, 17:13

Полная декомпиляция Android приложений в Java код

Порой при разработке не понимаешь как реализовать определенную функцию, которую видел в чужом приложении, или просто изучить стороннее приложение охота, для этого существует декомпиляция приложений.
В данной статье я покажу как декомпилировать Андроид приложения из *.apk файла в исходный код.

Итак, нам потребуется:
dex2jar
Java Decompiler
ApkTool


Все приложения являются бесплатными, мультиплатформенными и открытыми (кроме Java Decompiler, у него закрыт исходный код).
Их можно скачать с официального сайта.

Инструкцию буду проводить для ОС Windows.

1) Качаем dex2jar-0.0.7.10-SNAPSHOT.zip (номер версии может изменяться) и извлекаем все файлы в желаемую папку, например D:\Decompile .
2) Качаем Java Decompiler, я использовал JD-GUI и извлекаем для удобства в ту же папку, куда и dex2jar.
3) Качаем apktool1.4.1.tar.bz2 и apktool-install-windows-r04-brut1.tar.bz2 и извлекаем уже в системную папку. По умолчанию C:\Windows.
4) Берем нужный apk файл и кладем в папку с dex2jar и Java Decompiler. В примере приведу декомпиляцию приложения Калькулятор из стандартной поставки Android. (надо извлечь из архива).
5) Открываем Командную строку (Обработчик команд Windows) в вышеупомянутой папке. (например открыв apk файл с помощью C:\Windows\System32\cmd.exe).
6) Вводим команду dex2jar Calculator.apk и если все прошло хорошо, в той же папке появится файл Calculator.apk.dex2jar.jar
7) Запускаем jd-gui и открываем полученный на предыдущем шаге файл.
8) Выбираем пункт меню File-Save All Sources и сохраняем.
9) Извлекаем полученный zip архив.
10) Помещаем полученную папку в папку src (надо предварительно создать). (Что бы получилась примерно такая структура D:\Decompile\Calculator\src\com\android)
11) Опять же в командной строке вводим команду apktool d Calculator.apk Calculator, где Calculator.apk-имя пакета, Calculator-папка для декомпиляции
12) Если все хорошо, тогда в указанной папке будут исходники в двух форматах (java и smali), ресурсы и файлы AndroidManifest.xml, apktool.yml
13) Все готово, исходники получены. Правда после декомпиляции в коде есть, можно сказать, ошибки, я заметил пока только что вместо true и false стоят 1 и 0 соответственно.

P.S. Если хочется импортировать полученный код в IDE Eclipse (File-Import), тогда положите содержимое этого архива в папку с проектом, предварительно изменив на третьей строке PROJECT NAME, PROJECT NAME на желаемое название, в моем примере «Calculator» в файле .project
P.P.S. Если apk файл был пропущен при компиляции через обфускатор (proguard), тогда полученный код будет плохо читаем.

Автор статьи - BOOM.
Категория: Модификация смартфонных игр | Добавил: Tommy_M
Просмотров: 6099 | Комментарии: 1 | Рейтинг: 5.0/2

Всего комментариев: 1
Спам
Shine   (13.01.2013 23:00)
из-за какого-то калькулятора столько мороки %)

Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]

о, привет
Новинки
  • Файлы
  • Статьи
  • Новости

Gish Reloaded [Android 4.3+ support]
Комментов: 0 | Загрузок: 4
Gish The Mobile Game Remake [0.1 Beta]
Комментов: 18 | Загрузок: 118
SILENT EVIL 3D 2017 DEMO - NEW! v.1.1.1
Комментов: 18 | Загрузок: 49
Amityville Horror: Mobile Game
Комментов: 0 | Загрузок: 18
SERVERSIDE Demo
Комментов: 3 | Загрузок: 52
Quakeman ORIGINS - Beta Test
Комментов: 32 | Загрузок: 49
Flappy Bird
Комментов: 0 | Загрузок: 35
Piano Tiles 2
Комментов: 0 | Загрузок: 40
L2D Android
Комментов: 10 | Просмотров: 1267
DOOM II APK
Комментов: 21 | Загрузок: 70
Случайный мод
Ancient
Empireы 2142
1717 174 26 3.7
Статистика
Онлайн всего: 3
Гостей: 2
Пользователей: 1
Пользователи
Гости сайта
Wixel
[ Нас сегодня посетили ]
При копировании материалов, желательно оставлять ссылку на этот сайт!
© Tommy_M 2009-2017 | Хостинг от uCoz