Apk редактирование на windows

Содержание
  1. Как редактировать apk-файлы на компьютере
  2. Что такое APK файл?
  3. Обзор популярных редакторов АРК файлов
  4. Top APK Editor для Windows / PC, чтобы легко воссоздать APK файлы
  5. Как помогает редактор APK для Windows?
  6. Семь лучших APK редактор для ПК
  7. 1. APK Studio
  8. Давайте посмотрим на некоторые особенности APK Studio:
  9. 2. Редактор иконок APK
  10. Некоторые функции программного обеспечения APK icon editor:
  11. 3. APK файловый менеджер
  12. 4. APK Easy Tool
  13. 5. APK Editor Pro
  14. 6. APKTOOL
  15. 7. APK Editor Studio
  16. Некоторые функции этого редактора APK для Windows включают в себя:
  17. Как использовать APK файлы – запуск, изменение и конвертация
  18. Как открыть файл APK
  19. Откройте файл APK на Android
  20. Откройте файл APK на Windows
  21. Откройте файл APK на Mac
  22. Откройте файл APK на iOS
  23. Как конвертировать файл APK
  24. Вскрываем, модифицируем и запаковываем Android-приложения
  25. Содержание статьи
  26. Введение
  27. Декомпиляция приложений
  28. Устройство APK-пакетов и их получение
  29. Хакер #170. Малварь для OS X
  30. Просмотр и модификация
  31. Препарирование. Отключаем рекламу
  32. WARNING
  33. Итоги

Как редактировать apk-файлы на компьютере

Программы для платформы Андроид представляют собой единственный файл с расширением apk, что очень удобно. Фактически установка любой программы на смартфоне или планшете сводится к его простому копированию на ваш гаджет. Что же такое apk-файл и как можно посмотреть, что там внутри?

Что такое APK файл?

Аббревиатура APK раскрывается как Android Package Kit – исполняемый пакет файлов для Android-приложений. Это архив, содержащий скомпилированные и готовые к исполнению коды и другие ресурсы. apk-файлы хранятся на сайтах Интернета, вроде Google Play, откуда их можно скачать и установить в свой гаджет. Они не подвергаются шифровке.

Его структура подготовлена разработчиком для запуска в среде виртуальной машины Dalvik или ART. Эти машины встроены в ОС Андроид, они-то и запускают все приложения, которые есть на вашем устройстве.

Сам файл apk является обычным архивом, который вы можете открыть любым архиватором в среде Windows. Например, WinRAR, или файловым менеджером, который открывает ZIP-архивы. Давайте посмотрим, что же там внутри находится.

Обзор популярных редакторов АРК файлов

Как уже говорилось, распаковать apk-файл можно любым ZIP-архиватором. После этого можно будет просматривать хранящиеся там ресурсы.

С изображениями не будет проблем совсем, их можно открывать в любой соответствующей программе. Формат XML открывается любым текстовым редактором, например, Notepad++. Если знать, как устроен этот формат, то их уже можно редактировать. Но для скомпилированных исполняемых файлов придётся применять специальные средства.

Редактор Eclipse. Это полноценная кроссплатформенная среда для программиста. Можно вести разработку на любых современных языках и готовить исполняемые файлы, в том числе и для Андроида. Среда может гибко настраиваться с помощью многочисленных плагинов.

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

APK downloader. Это плагин для браузера Chrome, позволяющий очень легко скачивать apk-программы с любых сайтов и просматривать их структуру. Для этого можно даже быть не зарегистрированным на Google Play.

APK Editor. Редактор, позволяющий работать с ресурсами внутри apk-пакетов. Не настолько мощный, как Eclipse, но решающий множество простых задач. Например, можно убрать рекламные блоки из программы, русифицировать интерфейс, заменить значки или текстуры на свои, и многое другое.

Источник

Top APK Editor для Windows / PC, чтобы легко воссоздать APK файлы

Как помогает редактор APK для Windows?

Что мы знаем о файлах APK? Это файлы расширения для различных приложений Android, которые совместимы практически со всеми смартфонами на платформе Android. Эти файлы можно редактировать прямо на ПК. Есть несколько APK-редакторов для ПК, которые помогут вам отредактировать имя и значок приложения Android. Эти инструменты делают этот процесс за несколько минут с простыми инструкциями, которые необходимо соблюдать.

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

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

PS: если вам надоели ошибки Android передача файлов Mac не работает or Android-приложение не установлено, нажмите, чтобы исправить их сейчас.

Семь лучших APK редактор для ПК

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

Для окон доступно несколько инструментов, которые позволят вам перепроектировать приложения для Android. Однако многие лучшие инструменты редактирования APK доступны только для систем Android. Это создает очевидную проблему, поскольку Android не совместим с Windows. Ну, может с правильной помощью.

Для эксклюзивного Android APK-приложения для редактирования вы можете запускать их на компьютере с помощью эмулятора Android. На рынке доступно несколько таких решений эмулятора. Пришло время познакомить вас с несколькими редакторами APK для окон, о которых мы поняли. Эти инструменты представляют собой комбинацию не только оконных, но и других, которые используют эмулятор для работы.

Кроме того, вот лучшие из лучших Игры для Android и лучший Модед КИК для вашей справки.

1. APK Studio

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

Программное обеспечение сложное, поэтому, если вы только начали разработку Android, вам потребуется некоторое время, чтобы хорошо настроить различные операции. В APKeditor есть большинство инструментов, необходимых для разработки под Android, которые позволяют редактировать и перестраивать приложения.

Давайте посмотрим на некоторые особенности APK Studio:

2. Редактор иконок APK

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

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

Читайте также:  Windows ltsc что это чем отличается

Некоторые функции программного обеспечения APK icon editor:

3. APK файловый менеджер

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

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

4. APK Easy Tool

Идея APK редакторы для ПК в самом его названии; это позволяет очень просто реверс-инжиниринг приложений для Android. Эта программа Window очень легкая, что позволяет выполнять все основные задачи управления файлами APK, включая компиляцию и декомпиляцию, а также подписывание. Он работает более эффективно благодаря легкому пользовательскому интерфейсу, который более понятен.

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

5. APK Editor Pro

Это APK редактор для ПК это доступно бесплатно, что позволяет пользователям Windows 8.1 или Windows 10 управлять APK-файлами Android и редактировать их. Приложение предназначено исключительно для всех версий Android до Oreo. Инструмент не может работать независимо от окон, поэтому вам нужно будет обратиться за помощью к эмулятору Bluestacks, чтобы запустить программное обеспечение после загрузки его из магазина Google Play.

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

6. APKTOOL

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

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

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

Кроме того, давайте узнаем больше о том, как получить Spotify Premium APK без труда.

7. APK Editor Studio

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

Некоторые функции этого редактора APK для Windows включают в себя:

Последняя версия программного обеспечения 1.3.1 доступна для загрузки в Linux, Windows и macOS. Этот APK-редактор поставляется бесплатно как для iOS, так и для Windows. Это кроссплатформенный инструмент с открытым исходным кодом, который может быть вашим лучшим вариантом.

Мы надеемся, что эта статья помогла вам в поиске APK редактор для windows которые доступны в большом количестве для скачивания. Эти инструменты наверняка помогут вам со всеми вашими потребностями в редактировании и расположении файлов в нужном порядке. Обязательно поделитесь своим опытом с любым из этих инструментов в разделе комментариев ниже, а также сообщите нам, если вы сталкиваетесь с любым другим удивительным программным обеспечением для редактирования APK, которое, по вашему мнению, стоит проверить.

Источник

Как использовать APK файлы – запуск, изменение и конвертация

Файл с расширением APK является пакетом файлов для Android и используется для распространения приложений на Android – мобильной операционной системы от Google.

Файлы APK сохраняются в формате ZIP и, как правило, загружаются непосредственно на устройства Android, обычно через магазин Google Play, но их также можно найти на других веб-сайтах.

Часть содержимого, содержащегося в типичном APK-файле, включает в себя файл AndroidManifest.xml, classes.dex и resources.arsc; а также папку META-INF и res.

Как открыть файл APK

Файлы APK могут быть открыты в ряде операционных систем, но они используются, в основном, на устройствах Android.

Откройте файл APK на Android

Чтобы открыть файл APK на вашем Android-устройстве, вам нужно просто загрузить его, как любой другой файл, а затем открыть. Однако? файлы APK, загруженные из-за пределов магазина Google Play, могут быть установлены не сразу из-за ограничений системы безопасности.

Если файл APK не открывается на вашем Android, попробуйте найти его с помощью файлового менеджера, такого как Astro File Manager или ES File Explorer File Manager.

Откройте файл APK на Windows

Вы можете открыть файл APK на ПК, используя Android Studio или BlueStacks. Например, если вы используете BlueStacks, перейдите на вкладку Мои приложения и выберите Установить apk в правом нижнем углу окна.

Откройте файл APK на Mac

ARC Welder – это расширение Google Chrome, предназначенное для тестирования приложений Android для ОС Chrome, но оно работает на любой ОС. Это означает, что вы можете открыть APK на своем компьютере Mac или Windows, если это приложение установлено в браузере Chrome.

Откройте файл APK на iOS

Вы не cможете открывать или устанавливать файлы APK на устройстве iOS (iPhone, iPad и т.д.), поскольку файл построен совершенно иным образом, чем приложения, используемые на этих устройствах, и две платформы несовместимы друг с другом.

Вы также можете открыть файл APK в Windows, MacOS или любой другой настольной операционной системе с помощью инструмента извлечения файлов. Поскольку файлы APK представляют собой просто архивы из нескольких папок и файлов, вы можете разархивировать их с помощью программы, такой как 7-Zip или PeaZip, чтобы увидеть различные компоненты, составляющие приложение.

Однако, это не позволяет вам использовать APK-файл на компьютере. Для этого требуется эмулятор Android (например, BlueStacks), который по существу запускает ОС Android на компьютере.

Читайте также:  Nvidia mcp78 драйвер windows 7

Как конвертировать файл APK

Хотя программа или служба преобразования файлов обычно необходимы для преобразования файлов одного типа в другой, они не очень полезны при работе с файлами APK. Это связано с тем, что файл APK представляет собой приложение, предназначенное для работы только на определенных устройствах, в отличие от файлов других типов, таких как MP4 или PDF, которые работают на различных платформах.

Переименование файла таким образом, это не конвертация файла. И это работает только в случае файлов APK, потому что формат файла уже использует ZIP, но он просто добавляет другое расширение файла (.APK).

Как уже упоминалось выше, вы не можете конвертировать файл APK в IPA для использования на iOS, а также вы не можете конвертировать APK в EXE, чтобы использовать приложение Android в Windows.

Однако, обычно вы можете найти альтернативу iOS, которая работает вместо приложения для Android, которое вы хотите установить на свой iPhone или iPad. Большинство разработчиков имеют одинаковое приложение, доступное на обеих платформах (как APK для Android, так и IPA для iOS).

Что касается конвертера APK в EXE, просто установите Windows APK и затем используйте его, чтобы открыть приложение Android на вашем компьютере.

Вы можете преобразовать файл APK в BAR для использования с устройством BlackBerry, просто загрузив файл APK в онлайн-конвертер Good e-Reader APK в BAR. Подождите, пока преобразование закончится, а затем загрузите файл BAR обратно на компьютер.

Источник

Вскрываем, модифицируем и запаковываем Android-приложения

Содержание статьи

Иногда некоторые приложения на Android чем-то не устраивают пользователя. В качестве примера можно привести назойливую рекламу. А то бывает и так — всем хороша программа, да только перевод в ней или кривой, или вовсе отсутствует. Или, например, программа триальная, а получить полную версию возможности нет. Как же изменить ситуацию?

Введение

В этой статье мы поговорим о том, как разобрать пакет APK с приложением, рассмотрим его внутреннюю структуру, дизассемблируем и декомпилируем байт-код, а также попробуем внести в приложения несколько изменений, которые могут принести нам ту или иную выгоду.

Чтобы сделать все это самостоятельно, потребуются хотя бы начальные знания языка Java, на котором пишутся приложения для Android, и языка XML, который используется в Android повсеместно — от описания самого приложения и его прав доступа до хранения строк, которые будут выведены на экран. Также понадобится умение обращаться со специализированным консольным софтом.

Итак, что же представляет собой пакет APK, в котором распространяется абсолютно весь софт для Android?

Декомпиляция приложений

В статье мы работали только с дизассемблированным кодом приложения, однако если в большие приложения вносить более серьезные изменения, разобраться в коде smali будет гораздо сложнее. К счастью, мы можем декомпилировать код dex в Java-код, который будет хоть и не оригинальным и не компилируемым обратно, но гораздо более легким для чтения и понимания логики работы приложения. Чтобы сделать это, нам понадобятся два инструмента:

Использовать их следует так. Сначала запускаем dex2jar, указывая в качестве аргумента путь до apk-пакета:

В результате в текущем каталоге появится Java-пакет mail.jar, который уже можно открыть в jd-gui для просмотра Java-кода.

Устройство APK-пакетов и их получение

Пакет приложения Android, по сути, является обычным ZIP-файлом, для просмотра содержимого и распаковки которого никаких специальных инструментов не требуется. Достаточно иметь архиватор — 7zip для Windows или консольный unzip в Linux. Но это что касается обертки. А что внутри? Внутри же у нас в общем случае такая структура:

Перечисленные файлы и каталоги есть если не во всех, то, пожалуй, в абсолютном большинстве APK. Однако стоит упомянуть еще несколько не столь распространенных файлов/каталогов:

Этот каталог используют производители игр, помещая туда движок игры, написанный на C/C++, а также создатели высокопроизводительных приложений (например, Google Chrome). С устройством разобрались. Но как же получить сам файл пакета интересующего приложения? Поскольку без рута с устройства забрать файлы APK не представляется возможным (они лежат в каталоге /data/app), а рутить не всегда целесообразно, имеется как минимум три способа получить файл приложения на компьютер:

Какой из них использовать — дело вкуса; мы предпочитаем использовать отдельные приложения, поэтому опишем использование Real APK Leecher, тем более что написан он на Java и, соответственно, работать будет хоть в винде, хоть в никсах.

После запуска программы необходимо заполнить три поля: Email, Password и Device ID — и выбрать язык. Первые два — e-mail и пароль твоего гуглоаккаунта, который ты используешь на устройстве. Третий же является идентификатором устройства, и его можно получить, набрав на номеронабирателе код ##8255## и затем найдя строку Device ID. При заполнении надо ввести только ID без префикса android-.

Настройка Real APK Leecher

Хакер #170. Малварь для OS X

После заполнения и сохранения нередко выскакивает сообщение «Error while connecting to server». Оно не имеет отношения к Google Play, поэтому смело его игнорируй и ищи интересующие тебя пакеты.

Просмотр и модификация

Допустим, ты нашел интересующий тебя пакет, скачал, распаковал… и при попытке просмотра какого-нибудь XML-файла с удивлением обнаружил, что файл не текстовый. Чем же его декомпилировать и как вообще работать с пакетами? Неужели необходимо ставить SDK? Нет, SDK ставить вовсе не обязательно. На самом деле для всех шагов по распаковке, модификации и упаковке пакетов APK нужны следующие инструменты:

Использовать все эти инструменты можно и по отдельности, но это неудобно, поэтому лучше воспользоваться более высокоуровневым софтом, построенным на их основе. Если ты работаешь в Linux или Mac OS X, то тут есть инструмент под названием apktool. Он позволяет распаковывать ресурсы в оригинальный вид (в том числе бинарные XML- и arsc-файлы), пересобирать пакет с измененными ресурсами, но не умеет подписывать пакеты, так что запускать утилиту signer придется вручную. Несмотря на то что утилита написана на Java, ее установка достаточно нестандартна. Сначала следует получить сам jar-файл:

Далее нам понадобится скрипт-обвязка для запуска apktool (он, кстати, доступен и для Windows), включающий в себя еще и утилиту aapt, которая понадобится для запаковки пакета:

Далее просто сваливаем содержимое обоих архивов в каталог

Если же ты работаешь в Windows, то для нее есть превосходный инструмент под названиемVirtuous Ten Studio, который также аккумулирует в себе все эти инструменты (включая сам apktool), но вместо CLI-интерфейса предоставляет пользователю интуитивно понятный графический интерфейс, с помощью которого можно выполнять операции по распаковке, дизассемблированию и декомпиляции в несколько кликов. Инструмент этот Donation-ware, то есть иногда появляются окошки с предложением получить лицензию, но это, в конце концов, можно и потерпеть. Описывать его не имеет никакого смысла, потому что разобраться в интерфейсе можно за несколько минут. А вот apktool, вследствие его консольной природы, следует обсудить подробнее.

Импорт APK в Virtuous Ten Studio

Рассмотрим опции apktool. Если вкратце, то имеются три основные команды: d (decode), b (build) и if (install framework). Если с первыми двумя командами все понятно, то что делает третья, условный оператор? Она распаковывает указанный UI-фреймворк, который необходим в тех случаях, когда ты препарируешь какой-либо системный пакет.

Рассмотрим наиболее интересные опции первой команды:

Пользоваться apktool очень просто, для этого достаточно указать одну из команд и путь до APK, например:

После этого в каталоге mail появятся все извлеченные и дизассемблированные файлы пакета.

Читайте также:  Windows 10 lpr принтер

Препарирование. Отключаем рекламу

Теория — это, конечно, хорошо, но зачем она нужна, если мы не знаем, что делать с распакованным пакетом? Попробуем применить теорию с пользой для себя, а именно модифицируем какую-нибудь софтину так, чтобы она не показывала нам рекламу. Для примера пусть это будет Virtual Torch — виртуальный факел. Для нас эта софтина подойдет идеально, потому что она под завязку набита раздражающей рекламой и к тому же достаточно проста, чтобы не потеряться в дебрях кода.

Поиск кода рекламы в jd-gui

После этого в каталоге com.kauf.particle.virtualtorch появится файловое дерево, похожее на описанное в предыдущем разделе, но с дополнительным каталогом smali вместо dex-файлов и файлом apktool.yml. Первый содержит дизассемблированный код исполняемого dex-файла приложения, второй — служебную информацию, необходимую apktool для сборки пакета обратно.

Первое место, куда мы должны заглянуть, — это, конечно же, AndroidManifest.xml. И здесь мы сразу встречаем следующую строку:

Нетрудно догадаться, что она отвечает за предоставление приложению полномочий на использование интернет-соединения. По сути, если мы хотим просто избавиться от рекламы, нам, скорее всего, достаточно будет запретить приложению интернет. Попытаемся это сделать. Удаляем указанную строку и пробуем собрать софтину с помощью apktool:

В каталоге com.kauf.particle.virtualtorch/build/ появится результирующий APK-файл. Однако установить его не получится, так как он не имеет цифровой подписи и контрольных сумм файлов (в нем просто нет каталога META-INF/). Мы должны подписать пакет с помощью утилиты apk-signer. Запустили. Интерфейс состоит из двух вкладок — на первой (Key Generator) создаем ключи, на второй (APK Signer) подписываем. Чтобы создать наш приватный ключ, заполняем следующие поля:

Остальные поля, в общем-то, необязательны — но необходимо заполнить хотя бы одно.

Создание ключа в apk-signer

WARNING

Чтобы подписать приложение с помощью apk-signer, ты должен установить Android SDK и указать полный путь до него в настройках приложения.

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

Теперь этим ключом можно подписать APK. На вкладке APK Signer выбираем только что сгенерированный файл, вводим пароль, алиас ключа и пароль к нему, затем находим файл APK и смело жмем кнопку «Sign». Если все пройдет нормально, пакет будет подписан.

Так как мы подписали пакет нашим собственным ключом, он будет конфликтовать с оригинальным приложением, а это значит, что при попытке обновить софтину через маркет мы получим ошибку.

Цифровая подпись необходима только стороннему софту, поэтому если ты занимаешься модификацией системных приложений, которые устанавливаются копированием в каталог /system/app/, то подписывать их не нужно.

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

Обычно авторы приложений создают специальные классы для вывода рекламы и вызывают методы этих классов во время запуска приложения или одной из его «активностей» (упрощенно говоря, экранов приложения). Попробуем найти эти классы. Идем в каталог smali, далее com (в org лежит только открытая графическая библиотека cocos2d), далее kauf (именно туда, потому что это имя разработчика и там лежит весь его код) — и вот он, каталог marketing. Внутри находим кучу файлов с расширением smali. Это классы, и наиболее примечателен из них класс Ad.smali, по названию которого нетрудно догадаться, что именно он выводит рекламу.

Мы могли бы изменить логику его работы, но гораздо проще будет тупо убрать вызовы любых его методов из самого приложения. Поэтому выходим из каталога marketing и идем в соседний каталог particle, а затем в virtualtorch. Особого внимания здесь заслуживает файл MainActivity.smali. Это стандартный для Android класс, который создается Android SDK и устанавливается в качестве точки входа в приложение (аналог функции main в Си). Открываем файл на редактирование.

Внутри находится код smali (местный ассемблер). Он довольно запутанный и трудный для чтения в силу своей низкоуровневой природы, поэтому мы не будем его изучать, а просто найдем все упоминания класса Ad в коде и закомментируем их. Вбиваем строку «Ad» в поиске и попадаем на строку 25:

Здесь создается поле ad для хранения объекта класса Ad. Комментируем с помощью установки знака ### перед строкой. Продолжаем поиск. Строка 423:

Здесь происходит создание объекта. Комментируем. Продолжаем поиск и находим в строках 433, 435, 466, 468, 738, 740, 800 и 802 обращения к методам класса Ad. Комментируем. Вроде все. Сохраняем. Теперь пакет необходимо собрать обратно и проверить его работоспособность и наличие рекламы. Для чистоты эксперимента возвращаем удаленную из AndroidManifest.xml строку, собираем пакет, подписываем и устанавливаем.

Наш подопытный кролик. Видна реклама Он же, но уже без рекламы

Оп-па! Реклама пропала только во время работы приложения, но осталась в главном меню, которое мы видим, когда запускаем софтину. Так, подождите, но ведь точка входа — это класс MainActivity, а реклама пропала во время работы приложения, но осталась в главном меню, значит, точка входа другая? Чтобы выявить истинную точку входа, вновь открываем файл AndroidManifest.xml. И да, в нем есть следующие строки:

Они говорят нам (и, что важнее, андроиду) о том, что активность с именем Start должна быть запущена в ответ на генерацию интента (события) android.intent.action.MAIN из категории android.intent.category.LAUNCHER. Это событие генерируется при тапе на иконку приложения в ланчере, поэтому оно и определяет точку входа, а именно класс Start. Скорее всего, программист сначала написал приложение без главного меню, точкой входа в которое был стандартный класс MainActivity, а затем добавил новое окно (активность), содержащее меню и описанное в классе Start, и вручную сделал его точкой входа.

Открываем файл Start.smali и вновь ищем строку «Ad», находим в строках 153 и 155 упоминание класса FirstAd. Он тоже есть в исходниках и, судя по названию, как раз и отвечает за показ объявлений на главном экране. Смотрим дальше, идет создание экземпляра класса FirstAd и интента, по контексту имеющего отношение к этому экземпляру, а дальше метка cond_10, условный переход на которую осуществляется аккурат перед созданием экземпляра класса:

Скорее всего, программа каким-то случайном образом вычисляет, нужно ли показывать рекламу на главном экране, и, если нет, перескакивает сразу на cond_10. Ок, упростим ей задачу и заменим условный переход на безусловный:

Больше упоминаний FirstAd в коде нет, поэтому закрываем файл и вновь собираем наш виртуальный факел с помощью apktool. Копируем на смартфон, устанавливаем, запускаем. Вуаля, вся реклама исчезла, с чем нас всех и поздравляем.

Итоги

Эта статья лишь краткое введение в методы вскрытия и модификации Android-приложений. За кадром остались многие вопросы, такие как снятие защиты, разбор обфусцированного кода, перевод и замена ресурсов приложения, а также модификация приложений, написанных с использованием Android NDK. Однако, имея базовые знания, разобраться во всем этом — лишь вопрос времени.

Источник

Поделиться с друзьями
Советы экспертов и специалистов
Adblock
detector