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

Забыл пароль
Регистрация
Меню сайта
Главная страница Каталог файлов Всё для моддинга Новости Моды ПК игр Форум 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
Просмотров: 6295 | Комментарии: 1 | Рейтинг: 5.0/2

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

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

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

GD Lyubitel'ska9I 2
Комментов: 0 | Загрузок: 1
Last Day on Earth: Survival (+ моды)
Комментов: 6 | Загрузок: 1
GD for Edik
Комментов: 0 | Загрузок: 4
GD Electro
Комментов: 2 | Загрузок: 7
GD DYbuk 3 end
Комментов: 0 | Загрузок: 6
GD CuFru
Комментов: 0 | Загрузок: 6
GD Club Life
Комментов: 0 | Загрузок: 5
GD by DY!b!uk 1
Комментов: 0 | Загрузок: 9
GD by DY!b!uk 2
Комментов: 3 | Загрузок: 12
GD Bitalik Kovalev
Комментов: 0 | Загрузок: 12

С наступающим короч)
Комментов: 1 | Просмотров: 315
Silent Evil - что же с релизом?
Комментов: 2 | Просмотров: 181
Alien Shooter на телефон! |Java| (Полное прохождение)
Комментов: 0 | Просмотров: 230
Duke Nukem Mobile |Java| Прохождение (2004)
Комментов: 0 | Просмотров: 233
ЛУЧШИЕ ИГРЫ ЗА ИСТОРИЮ JAVA #2 Дополнение
Комментов: 2 | Просмотров: 448
F.E.A.R. Mobile (Полное прохождение долгожданного мода + и небольшой обзор)
Комментов: 1 | Просмотров: 410
Nowhere 3D
Комментов: 10 | Просмотров: 824
Случайный мод

Mustick islands: Forever
1284 172 12 5.0
Статистика
Онлайн всего: 4
Гостей: 4
Пользователей: 0
Пользователи
Гости сайта

[ Нас сегодня посетили ]
При копировании материалов, желательно оставлять ссылку на этот сайт!
© Tommy_M 2009-2018 | Хостинг от uCoz