как открыть исходный код приложения

Как посмотреть исходный код приложения Android

С каждым днем приложений для Android становится все больше и больше. Миллионы интересных игр и полезных программ можно найти в Play Market. Все они имеют удобный интерфейс и справляются с поставленной задачей. Без них сложно представить современный мир информационных технологий. Эта статья ориентирована на людей, которые не только ценят функционал и внешний вид приложений, а еще и интересуются их внутренним устройством.

Если Вам когда-либо было интересно, что находится “под капотом” любимого приложения, и вы немного смыслите в программировании – эта статья для Вас. Мы расскажем, как посмотреть исходный код приложения Android прямо на вашем гаджете. Поехали!

Общие сведения

Большинство программ для ОС Android, как и большая часть самой операционной системы, написаны на языке программирования Java. А это значит, что посмотрев в исходный код программ Android, мы, скорее всего, увидим Java код с использованием Android SDK (которая включает в себя инструменты платформы Android). Повторюсь: чтобы понимать исходный код приложений, нужно иметь базовые знания Java и принципы работы Android.

Как узнать исходный код приложений Android?

Для начала скачайте приложение, исходный код которого Вас заинтересовал. Затем зайдите в Play Market и скачайте утилиту под названием Show Java. Именно она будет заниматься декомпилированием. Установили? Отлично, а теперь перейдем к самому интересному – извлечению исходного кода Android программы. Запускаем Show Java.

show java 2.1.0 1

Выберите нужное приложение из установленных, или найдите его на SD карте. Теперь нужно выбрать декомпилятор. Я обычно выбираю CRF. Если возникнут проблемы – пробуйте JaDX.

Начнется декомпиляция программы. Это может занять некоторое время. Чем больше приложение – тем дольше декомпилятор будет доставать исходные коды. Пока вы ждете результата, почитайте о перспективных языках программирования.

По завершению процесса вы получите список пакетов с исходниками Android приложения. Конечно, это не 100% копия кода, которую писали разработчики этого приложения. Но основная логика сохраняется, разобрать не сложно. Что делать с исходниками? Что угодно. Смотрите, разбирайте, возможно Вам будут интересны некоторые “фичи” или особенности реализации функционала программы.

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Источник

Есть ли способ получить исходный код из файла APK?

жесткий диск на моем ноутбуке просто разбился, и я потерял весь исходный код приложения, над которым я работал в течение последних двух месяцев. У меня есть только APK файл, который хранится в моей электронной почте, когда я отправил его другу.

есть ли способ, чтобы извлечь исходный код из этого файла APK?

16 ответов

простой способ: используйте онлайн-инструмент http://www.javadecompilers.com/apk, загрузить apk и получить исходный код.

Шаг 1:

создайте новую папку и скопируйте ее.файл apk, который вы хотите декодировать.

Шаг 2:

скачать dex2jar и извлечь его в ту же папку (или новую папку).

ход занятия.dex файл на dex2jar папка.

скачать Java decompiler, дважды щелкните по jd-gui, нажмите «Открыть файл» и откройте классы.Декс.dex2jar файл из этой папки: теперь вы получаете файлы классов.

Шаг 3:

теперь откройте другую новую папку

скачать последнюю версию apktool и окно установки apktool (оба могут быть скачано по той же ссылке) и поместите их в ту же папку

откройте командное окно

Теперь запустите команду apktool if framework-res.apk и далее

apktool d myApp.apk (где myApp.apk обозначает имя файла, которое вы хотите декодировать)

теперь вы получаете папку с файлами в этой папке и можете легко читать xml-файлы apk.

Шаг 4:

это не какой-либо шаг, просто скопируйте содержимое обеих папок (в данном случае обеих новых папок)в одну

и наслаждайтесь исходным кодом.

это альтернативное описание-на всякий случай, если кто-то застрял с описанием выше. Выполните следующие действия:

промежуточный результат: файлы ресурсов, AndroidManifest.xml

промежуточный результат: classes.dex

\dex2jar.bat classes.dex в коробке DOS; для Linux используйте dex2jar.sh )

промежуточный результат: classes_dex2jar.jar

результат исходный код

Примечание: не разрешается декомпилировать пакеты сторонних производителей; это руководство предназначено для восстановления личного исходного кода только из файла APK; наконец, результирующий код, скорее всего, будет запутан

пока вы можете декомпилировать свой APK файл, вы, вероятно, нажмете одну большую проблему:

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

существует также новое приложение на Play Store С помощью которого можно декомпилировать apk (системные приложения тоже) и просмотреть исходный код прямо на вашем смартфоне. Она сохраняет файлы на SD карту, так что вы можете просмотреть его на вашем компьютере. Для этого не Требуется root или что-то еще.

просто установите и получайте удовольствие. Я думаю, что это самый простой способ декомпилировать приложение.

Я бы рекомендовал вам иметь репозиторий кода, даже если вы единственный кодер. Я использовал Проект Locker для моих собственных проектов. Это дает вам бесплатный SVN и Git РЕПО.

эти две статьи описывают, как сочетать использование apktool и dex2jar взять APK файл и создать проект Eclipse, который может создавать и запускать его.

apktool будет работать. Вам даже не нужно знать хранилище ключей для извлечения исходного кода (что немного страшно). Основным недостатком является то, что источник представлен в формате Smali вместо Java. Другие файлы, такие как значок и основной.xml проходит отлично, хотя и может стоить вашего времени, чтобы по крайней мере восстановить их. В конечном счете, вам, скорее всего, придется переписать свой Java-код с нуля.

вы можете найти apktool здесь. Просто скачайте apktool и соответствующий помощник (для Windows, Linux или Mac OS). Я рекомендую использовать такой инструмент, как 7-Zip, чтобы распаковать их.

есть несколько способов сделать это:

используйте функцию «профиль или отладка APK» в Android Studio 3.0.

Это позволяет открывать и исследовать APKs в Android Studio. Занятия декомпиляция в smali. Ресурсы не извлекаются, и такие вещи, как» перейти к определению»,» найти все ссылки » и отладка не работают без исходного кода (android studio 3.0 canary 9). Некоторые дополнительные функции smali могут работать с smalidea.

0aec1a44b21317f78bad4be5d1e7989d

bafa371dcf59b558cffae65b3c350242

61ff38eb6cf3c1c7da20de2e49ba5226

Jadx декомпилирует код в данном APK в исходные файлы java.

7834824b51296fc5ed0ea634f8cea121

Apktool-это инструмент командной строки, который извлекает ресурсы и декомпилирует код в smali для данного apk. Вы также можете перекомпилировать с помощью apktool. Вот пример этого в действии:

может быть легко увидеть источник:

Я покажу вам другой способ декомпилировать .apk файлы.

вы можете выполнить первые 2 шага от «prankul Гарг«. Так что у вас есть еще одна возможность:

Шаг 3′:

скачать «JD-GUI», это легко найти. Открой свой .Джар файл в » JD-gui.исполняемый.» (Файл > Открыть файл > ‘ нашел свой .Джар «файл»). После этой процедуры можно сохранить все ресурсы в .zip.

1st-вы должны переименовать .apk до .zip

2nd-вы должны декодировать .Декс!—2— > файл (если хотите, расшифруйте .apk до dex2jar, это возможно)

3rd-вы должны декодировать .Джар С JD-GUI

ниже онлайн:

Apktool по инженерный 3-й партии, закрытые, бинарные приложения для Android.

Он может декодировать ресурсы почти в исходную форму и перестраивать их после внесения некоторых изменений.

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

этот сайт https://www.apkdecompilers.com/ сделал это автоматически.

сначала я попробовал сайт, упомянутый в принятом ответе, но это не сработало для меня.

Я лично рекомендую Показать Java Android App чтобы получить исходный код. Вы можете скачать его из play store или из здесь

некоторые ограничения, очевидно, существуют из-за сервиса «online nature»: вы можете извлекать и исследовать активы и файл манифеста, но на данный момент невозможно перекомпилировать приложение.

тем не менее, это без проблем способ «открыть» приложение для android.

Источник

Общеобразовательный справочник
Adblock
detector