Декомпиляция Android приложений
@DarkDarkРазработка приложений для смартфонов на базе Android ведётся на языках Java или Kotlin (тот же Java, только новее и удобнее) (есть еще python фраемворк kivy, но на нем мало кто пишет). После компиляции классов и методов в байт-код, на выходе мы получаем установочный пакет с расширением *.apk.
По сути, это упакованные в архив данные. И открыть нашу программу можно через любую программу-архиватор. Однако все исходники будут зашифрованы.
Для распаковки и декомпилирования приложения нам понадобятся 2 программы (из архива под постом):
Первым делом открываем терминал или командную строку и прописываем путь до нашего исполняемого скрипта dex2jar.*(.bat в windows/.sh linux), после так же указываем путь до нашего установочного пакета *.apk.
Жмякаем Enter и видим примерно такую картину. Это значит, что программа успешно была распакована и из неё был изъят *.jar файл со всеми классами.
Располагается этот файл в директории на уровень ниже, чем вы находились до этого.
Далее запускаем jd-gui и в меню "File" - "Open File..." (или Ctrl + O) выбираем наш файл с расширением *.jar.
Успешно. Теперь мы можем изучить исходники любой программы, написанной под Android.