Как вытащить исходники из apk
Перейти к содержимому

Как вытащить исходники из apk

  • автор:

Как извлечь APK-файл любого приложения для Android

Одним из преимуществ открытости Android всегда считалась возможность загружать APK-файлы приложений в обход Google Play. Кто-то таким образом просто экономит, а кто-то получает доступ к ПО, которого попросту нет в официальном каталоге. Подобная практика распространена настолько широко, что найти APK-файл любого приложения в интернете не составляет никакого труда. Другое дело – извлечь его из уже установленной на смартфон программы. Впрочем, для Android нет ничего невозможного.

Как извлечь APK-файл любого приложения для Android. Фото.

Извлечь APK-файл из уже установленного приложения можно несколькими путями. Традиционный предполагает поиск по файловой системе, но разработчик Павел Рекун придумал куда более легкий способ, создав специальный менеджер приложений, позволяющий в одно нажатие извлечь APK-файл из приложения в отдельную папку.

Где взять APK-файл приложения

  • Установите приложение Skit;
  • Раздайте ему необходимые привилегии;
  • Найдите в разделе установленного ПО нужное приложение;

Как извлечь APK-файл любого приложения для Android. Где взять APK-файл приложения. Фото.

Как извлечь APK-файл любого приложения для Android. Где взять APK-файл приложения. Фото.

Как извлечь APK-файл любого приложения для Android. Где взять APK-файл приложения. Фото.

Извлеченный APK-файл можно передать другим пользователям, позволив им установить бесплатно даже платное ПО, которое вы приобрели в Google Play. Несмотря на то что это не совсем легально, такой способ может прийтись кстати при использовании двух смартфонов, один из которых работает на базе китайской прошивки, не включающей в себя Google Play.

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

Подписывайся на наш канал в Яндекс.Дзен, чтобы ежедневно читать эксклюзивные материалы, которых нет на сайте.

Приложение: Skit

Разработчик: Pavel Rekun Категория: Инструменты Цена: Бесплатно Скачать: Google Play Приложением уже заинтересовались: 0 человек

Оставить комментарий в Telegram. Поделитесь мнением в чате читателей Androidinsider.ru

Теги

  • Google Play
  • Операционная система Android
  • Приложения для Андроид

Наши соцсети

Новости, статьи и анонсы публикаций

Свободное общение и обсуждение материалов

Лонгриды для вас

Игры являются неотъемлемой частью современной культуры. С каждым годом они становятся все более популярными и проникают в различные сферы нашей жизни. От исторических стратегий до захватывающих сетевых шутеров. Но игры — это не только развлечение, они также имеют значительное влияние на наш разум, способствуя развитию креативности, стратегического мышления и социальных навыков. Предлагаю рассмотреть. Несколько игра, которые смело могут считаться лучшими в своих жанрах. Одно тематикой мы ограничиваться не будем, в поговорим в целом о лучших бесплатных играх, которые можно скачать сейчас в Google Play.

Сбербанк

Несмотря на то что в России уже несколько лет работает Система быстрых платежей, которая позволяет переводить деньги по номеру телефона без комиссии, некоторые банки по-прежнему противятся тому, чтобы их клиенты ей пользовались. Ведь от этого в том числе зависит и их доход, часть которого они недополучают, потому что мы с вами ничем не платим за факт пересылки денег. Поэтому зачастую банки прячут кнопку перевода по номеру куда подальше, дабы мы её не нашли и отправили средства напрямую на карту, заплатив комиссию. Какое-то время и Сбербанк придерживался такой же политики, но в конце концов сдался и больше других упростил процедуру перевода денег.

Вы даже не представляете, что можно найти в Гугл Плей! Магазин приложений намного богаче App Store, поэтому поиск находит программы практически по любому введенному ключевому слову! Да, некоторые из них без оценок или не понравились пользователям вообще, но есть и крутые приложения для Андроид с высоким рейтингом. Более того, некоторые из них постоянно маячат в рекомендациях Гугл Плей, но не получают заслуженного внимания, а зря. Нашел для вас 5 полезных приложений на любой вкус, включая игры, проверенных пользователями, от которых действительно много пользы. Скачивайте на телефон — точно не пожалеете!

Как получить исходный код из .apk-файла?

Какого плана ответ Вы хотите получить? Полный процесс декомпиляции, думаю, никто описывать не будет, но Вы можете найти множество информации в интернете по запросу, например, «декомпиляция apk», а потом задать какой-то конкретный вопрос. Но вообще дело это непростое и не всегда результативное.

2 сен 2016 в 19:07
apk не содержит исходного кода, следовательно никак.
2 сен 2016 в 22:16

2 ответа 2

Сортировка: Сброс на вариант по умолчанию

apk содержит только байт-код (файлы .smali, а не исходники), который можно получить утилитой apktool (или другими на ее основе). Байт-код можно преобразовать в java-код утилитами dex2jar и в «исходники» утилитой jd gui (или другими на их основе).

Однако назвать полноценным исходником полученный результат можно с большой натяжкой, чаще всего из таких «исходников» невозможно вновь собрать рабочий apk, не проделав титанический труд.

Читаемость таких «исходников» тоже, мягко говоря, под вопросом. Результат примерно аналогичен машинному переводу: русский — английский — французкий — русский, то есть никакой.

Отслеживать
ответ дан 3 сен 2016 в 0:11
36.8k 6 6 золотых знаков 49 49 серебряных знаков 125 125 бронзовых знаков
Хорошее сравнение с машинным переводом.
23 сен 2016 в 3:50
Только с языками при этом лучше.)
4 дек 2019 в 16:15

Вы можете воспользоваться одним из apk декомпиляторов, например этим, или этим. В интернете можно найти много информации по декомпиляторам, так и гайдов/доков по ним.

Отслеживать
user177221
ответ дан 2 сен 2016 в 20:53
Rostyk Shevtsiv Rostyk Shevtsiv
406 2 2 серебряных знака 4 4 бронзовых знака

  • java
  • android
  • дизассемблирование
    Важное на Мете
Похожие

Подписаться на ленту

Лента вопроса

Для подписки на ленту скопируйте и вставьте эту ссылку в вашу программу для чтения RSS.

Дизайн сайта / логотип © 2024 Stack Exchange Inc; пользовательские материалы лицензированы в соответствии с CC BY-SA . rev 2024.5.3.8609

Как извлечь ассеты и C# код из APK

Две небольшие статьи одного автора, про то, как извлечь ассеты из APK файл Unity проекта и как получить C# код от туда же. Конечно он будет не в идеальном виде, но всё же.

Иногда интересно (и полезно) узнать, как устроены некоторые моменты в игре, таким образом можно расковырять его и поискать. Извлекать ассеты (картинки, звуки, модели) и использовать их в своих проектах, конечно не рекомендуется 🙂

Если хотите хоть как-то усложнить жизнь таким «хакерам» и защитить свой проект, можно использовать обфускаторы кода, такие есть на Github и в Unity Asset Store.

Можно ли восстановить исходники из apk?

Всем привет. Есть ли возможность восстановить исходники приложения из apk файла??
HDD приказал долго жить, унеся с собой исходники последнего приложения.
Уже пробовал dex2jar, и несколько онлайн декомпиляторов.
С онлайн декомпилятором все неоднозначно, затыкается на mainactivity ошибкой NullPointerExtention.
А dex2jar не дает ясности в декомпилированом коде.

  • Вопрос задан более трёх лет назад
  • 1379 просмотров

2 комментария

Простой 2 комментария

GavriKos

Не ответ, но все таки: начинайте юзать git, чтобы таких проблем небыло в будущем.

Zettabyte

HDD приказал долго жить, унеся с собой исходники последнего приложения

Зашёл в этот вопрос случайно, увидев его в «Интересном», и не смог пройти мимо, прочитав, что

Иных вариантов нет

Не совсем понятно, почему вы даже не рассматриваете вариант восстановления данных.
Загляните к нам, в зависимости от того, что случилось с диском, может быть вполне бюджетно:
https://восстановление-данных.рф/

Диагностика бесплатна, кроме того, вы можете попробовать сделать предварительную диагностику самостоятельно, скачав R.tester по ссылке выше (но только если диск не ударяли и он не издаёт посторонних звуков).

Решения вопроса 1

borisdenis

Довольный Айтишникъ @borisdenis

Одного dex2jar мало

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

Взято с 4pda гуглится за пару секунд

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *