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

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

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

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

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

SILENT EVIL 3D 2018 v.1.3 Beta (относительно стабильный билд)
Комментов: 46 | Загрузок: 208
Ancient Empires 2. Mod By Black Phoenix. Skirmish Edition 2018 year
Комментов: 2 | Загрузок: 11
Quantum
Комментов: 12 | Загрузок: 79
Evil Dead Regeneration Java Beta
Комментов: 3 | Загрузок: 70
Walking Zombie :D
Комментов: 4 | Загрузок: 55
Grim Reaper
Комментов: 0 | Загрузок: 40
Warsong Checkers
Комментов: 0 | Загрузок: 29
Meat2Eat: Pavlov Alive
Комментов: 1 | Загрузок: 41
The Chaos Engine
Комментов: 0 | Загрузок: 31
The Eyes
Комментов: 1 | Загрузок: 55

БЫСТРАЯ НАВИГАЦИЯ ПО САЙТУ
Комментов: 3 | Просмотров: 2469
Работа с EMG Studio
Комментов: 9 | Просмотров: 3765
J2ME Loader - 1.2.5.1 (эмулятор Java на Android)
Комментов: 2 | Просмотров: 1688
M3G to OBJ Converter + Lang Editor
Комментов: 2 | Просмотров: 541
Исходный код Gish Reloaded
Комментов: 2 | Просмотров: 1631
Моды Minecraft PE
Комментов: 0 | Просмотров: 1317
Оптимизация графики
Комментов: 5 | Просмотров: 2354

Old Gameloft games
Комментов: 0 | Просмотров: 75
С наступающим короч)
Комментов: 1 | Просмотров: 496
Silent Evil - что же с релизом?
Комментов: 5 | Просмотров: 363
Alien Shooter на телефон! |Java| (Полное прохождение)
Комментов: 0 | Просмотров: 402
Duke Nukem Mobile |Java| Прохождение (2004)
Комментов: 1 | Просмотров: 396
ЛУЧШИЕ ИГРЫ ЗА ИСТОРИЮ JAVA #2 Дополнение
Комментов: 2 | Просмотров: 741
F.E.A.R. Mobile (Полное прохождение долгожданного мода + и небольшой обзор)
Комментов: 2 | Просмотров: 621
Случайный мод
Новая часть GRAVITY! От GameLabs....и этим все сказано...то есть не всё....читаем ПОЛНОЕ ОПИСАНИЕ!!!!
1399 233 7 4.5
Статистика
Онлайн всего: 5
Гостей: 5
Пользователей: 0
Пользователи
Гости сайта

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