- APK чем открыть и как редактировать?
- ↑ Что такое APK файл?
- Изучаем Android. Как в Android cменить программу по умолчанию для открытия файлов того или иного типа
- Открываем и редактируем файлы Apk на устройствах Андроид
- Как открыть Apk файл на Андроид
- Содержание
- Интерфейс APK Editor Pro
- Как заменить картинку в приложении
- Как удалить рекламу из приложения
- Ссылки
- Модификация исходного кода android-приложения с использованием apk-файла
APK чем открыть и как редактировать?
↑ Что такое APK файл?
Смотрим что внутри
По сути .apk это ZIP архив, поэтому посмотреть на внутреннее устройство можно воспользовавшись любым файловым менеджером или архиватором, например WinRAR или мобильным приложением X-plore.
При этом стоит помнить что вы получаете лишь визуальный доступ к внутренним ресурсам, возможности редактирования крайне ограничены.
Рассмотрим структуру
Внутри .apk мы видим ряд файлов и папок, давайте узнаем для чего они служат:
- AndroidManifest.xml — это своего рода «паспорт» приложения из которого можно узнать все основные моменты, требования, версию, разрешения и прочее.
- META-INF этот фаил содержит метаданные, то есть данные о данных, контрольные суммы, пути к данным, пути и контрольные суммы ресурсов, сертификаты. Открыть этот фаил можно любым текстовым редактором, но рекомендуется использовать Notepad++.
- Папка res содержит все ресурсы программы, графические, такие как иконки, картинки, текстовые, элементы графического интерфейса. Получить доступ к папке так же можно без труда.
- classes.dex — непосредственный программный код приложения, выполняемый виртуальной машиной Dalvik VM, увидеть что внутри этого файла можно лишь декомпилировав .apk, об этом мы расскажем в других статьях. resources.arsc -скомпилированный файл XML, данный фаил содержит данные о всех ресурсах задействованных в программе.
- lib — папка с нативными библиотеками, получить доступ к ресурсам которой можно лишь при использовании специализированных программ. Так же в APK могут встречаться такие файлы и папки как com, org, udk, но далеко не всегда.
Теперь рассмотрим внутреннюю структуру более подробно для этого нам понадобиться программа для декомпиляции, Java и АПК-файл. Основным инструментом для разборки .apk является Apktool, но данная программа работает только со строки, что не очень удобно. Для более быстрого и удобного разбора можно использовать APKing, это все та же Apktool, но с возможностью работы из контекстного меню.
И так устанавливаем APKing как любое приложение для Windows и выбрав .apk нажимаем на него правой клавишей мыши и одновременно Shift, после чего увидим следующее:
И выбираем необходимое действие, например декомпилировать полностью, далее программа завершит операцию и создат папку с таким же названием.
Открыв папку мы получим доступ ко всем ресурсам АПК файла.
Теперь все текстовые файлы можно редактировать, при этом соблюдая основные правила, можно использовать популярную программу Notepad++, для примера рассмотрим AndroidManifest.xml
Редактировать подобные ресурсы можно как обычный текстовый фаил.
После применения изменений необходимо собрать и подписать АПК. Нажимаем на папку с ресурсами правой кнопкой и Shift, выбираем скомпилировать и подписать, после завершения программа создат готовый файл в папке dist.
Как работать с другими ресурсами апк, в том числе и графическими мы узнаем из следующих статей.
Источник
Изучаем Android. Как в Android cменить программу по умолчанию для открытия файлов того или иного типа
Судя по письмам, приходящим к нам на сайт, многие начинающие Android пользователи часто сталкиваются с такой неприятной ситуацией, когда, например, хотелось бы посмотреть содержимое zip файла или распаковать его, а вместо этого он открывается в приложении для чтения книг Cool Reader.
Или, когда фотографии открываются не в галерее, а в Facebook Messenger. Подобное положение дел ставит в тупик многих неопытных пользователей, несмотря на то, что на самом деле исправить ситуацию очень просто. Сегодня я вам расскажу, как в Android изменить приложение по умолчанию всего лишь в несколько кликов.
Вообще, возможность выбора приложения, с помощью которого можно будет открывать тот или иной тип файлов по умолчанию, является одним из достоинств операционной системы Android. При этом если у вас возникнет необходимость, вы можете сбросить умолчания — сделать так, чтобы каждый раз у вас была возможность выбора приложения при открытии файла (скриншот выше) или задать новое приложение, которое будет открывать файл по умолчанию.
Чтобы сделать это, нам для начала нужно сбросить умолчания. Для этого перейдите в меню настроек вашего планшета или телефона, в раздел «Приложения», выберите в списке программу, которая открывает файлы нужного нам типа автоматически, и кликните по ней.
После этого откроется окно со свойствами этого приложения «О приложении»:
Прокрутите содержимое окна вниз, пока не увидите пункт «ЗАПУСК ПО УМОЛЧАНИЮ». Для того чтобы сбросить умолчания нажмите на кнопку «Удалить настройки по умолчанию».
Всё, теперь после клика по zip архиву из примера в начале статьи, вы увидите заветный диалог выбора программы, с помощью которой можно открыть этот файл. Теперь вы можете или задать новую программу по умолчанию или каждый раз выбирать соответствующее приложение из списка.
Совет: Когда вы видите подобный диалог, для того чтобы быстро выбрать нужное приложение, не нажимая затем кнопку «Только сейчас», кликните по его иконке двойным тапом:
Внешний вид всплывающих меню и меню настройки приложения в зависимости от устройства и версии Android может выглядеть иначе, но общий смысл смены программы по умолчанию остается неизменным – в любой момент вы можете очистить умолчания в меню настроек приложений, а затем задать их заново.
Ну вот, теперь вы знаете как в Андроид можно отменить или задать программу по умолчанию. Правда же это совсем не сложно?
Источник
Открываем и редактируем файлы Apk на устройствах Андроид
Привет всем. Здесь вы узнаете, как открыть файл apk на Андроид и даже поковырять его код. Не будем останавливаться на общих понятиях расширения apk, сразу перейдем к делу. Для этих целей создано приложение “APK Editor Pro”. Этот инструмент поможет открыть, а также редактировать apk файлы. Ссылки для скачивания приложены в конце статьи.
При помощи его я редактировал созданное в конструкторе приложение, так как некоторые ссылки и изображения (по умолчанию встраиваемые конструктором) не устраивали. Нет, я не программист и понимаю в кодах не больше вашего, но инструмент APK Editor позволяет работать с ним пользователям любого уровня от новичка до профессионала, так как оно имеет подсказки.
Как открыть Apk файл на Андроид
Содержание
Интерфейс APK Editor Pro
Главная страница содержит четыре кнопки:
- Выберете Аpk
- Выберете Аpk из приложения
- Помощь
- Выход
Для редактирования используются первые две.
1. Первая кнопка открывает непосредственно файлик apk, сохраненный в памяти устройства. То есть, открывается встроенный менеджер, находите нужное место расположения редактируемого объекта.
Клик по нужному элементу вызовет окно, где нужно выбрать, что вы хотите делать.
- Редактирование ресурсов
- замена файлов
- общее редактирование
Функция редактирования ресурсов позволяет изменять строки, файлики, манифест. Через эту функцию доступно практически все содержимое редактируемого файла.
Замена, подразумевает полную подмену одного файла на другой. Как правило, её используют для замены изображений, аудио и других элементов.
Общее редактирование поможет изменить название приложения, пакета, место установки, код версии, название версии.
2. Вторую кнопку используют в случае отсутствия файла apk, но при наличии установленного приложения. Выбираете из списка и приступаете к редактированию.
Клик на кнопку вызовет список всех установленных приложений. Здесь же можно переключиться между пользовательскими и системными.
Выбрав объект, открывается окно для выбора редактирования, но добавляется дополнительно “Редактирование данных”.
По-большому счету эта функция ничего интересного не даст, разве что только профи найдет в нем смысл.
3. Раздел “Помощь” – это одна большая подсказка по работе с некоторыми функциями: замена названия приложения, подмена фонового рисунка, ликвидация рекламы, перемещение данных на карту, удаление подозрительных разрешений.
В принципе инструкция написана неплохо, но при изучении советую внимательно изучить от начала и до конца.
4. Последняя кнопка “Выход” говорит сама за себя. Нажав её, приложение закроется.
Теперь на примерах рассмотрим использование приложения.
Как заменить картинку в приложении
1. Выбираем вторую кнопку “Выберете … из приложений”
2. Находим объект, который подвергнем испытанию, клик по нему.
з. Переход по “Замена файлов”
4. Выбрать “Изображения”
5. Долгое нажатие откроет окно:
Нам нужна замена. Заранее необходимо подготовить другой файл и закинуть его в устройство. Для этих целей я использую папку “Others”. По умолчанию она имеется в каждом устройстве.
6. Клик по готовому изображению произведет подмену.
7. Жмем “Сохранить” и ждем готового результата. Это может занять некоторое время, все зависит от размера приложения.
8. По окончании будет указан путь, куда сохраняется модифицированный файл. Прежде чем запустить новый apk, старый необходимо удалить.
Как удалить рекламу из приложения
Рекламный код может быть прописан где угодно, все зависит от её назначения. Мы рассмотрим стандартный способ. Этот способ описан в разделе помощь, но пришлось немного потратить время на разбор, так как названия папок и файлов немного не соответствовало. Видимо, информация устаревает.
Начнем сразу с пункта №3. Первый и второй выполняем как в первом примере.
-
- Переход по “Редактирование ресурсов”
- Выбираем параметр “Файлы”
- Находим место где расположена папка “layout”
- Выбираем файл “main. xml”
-
- Далее, находим файл: layout_height=”wrap_content”
- Вместо “wrap_content” прописываем “0dip”
- Все это сохраняем и ждем завершения
Удаляем старый apk и устанавливаем новый.
В этом случае убрали рекламу только с главной страницы.
Работать с редактированием элементов лучше всего через программу AirDroid. Оно выводит экран смартфона на монитор компьютера. Приятней работать с нормальной клавиатурой, а не тыкать в малюсенькие кнопочки устройства.
Ссылки
С вопросом “как открыть apk файл на андроид” разобрались. Плюс ко всему мы можем его полноценно редактировать под свои интересы.
Где взять приложение выбирать вам, ссылки ниже.
Установить APK Editor
с Плэй Маркет (платно)
с 4PDA (со скидкой и …)
Источник
Модификация исходного кода android-приложения с использованием apk-файла
Так уж получилось, что приложение для чтения комиксов и манги, которое я использую на своем android-смартфоне, после обновления стало показывать рекламу в конце каждой главы комикса. Данное приложение пару лет назад было доступно на Google Play (платная версия которого и была мной куплена), но было удалено в силу «нарушения авторских прав», после чего ушло в подполье и стало распространятся через сайт разработчика. Увы, достойных альтернатив этому приложению на android и iOS я не нашел, но и смотреть рекламу особо не было желания, тем более я уже покупал версию без рекламы. Сам разработчик почему-то не сделал возможности отключить ее, а на просьбы добавить такую возможность не отозвался. Поэтому пришлось искать альтернативные методы ее отключения. Первое, что пришло в голову, это то, что android-приложения пишутся на java, а значит есть вероятность, что автор не обфусцировал свое приложение и его можно попытаться декомпилировать. Немного подумав, я приступил к работе.
Для начала был загружен сам apk-файл приложения. Затем недолгий поиск по интернету привел меня на сайт http://www.decompileandroid.com/. С его помощью можно было загрузить apk-файл с приложением и на выходе получить набор исходников. Увы, декомпиляция в java-классы происходит не совсем идеально и поэтому восстановить полностью сам проект приложения в IDE(Idea) у меня не получилось, но это позволило проанализировать саму структуру проекта и разобраться как он примерно работает. После проведения анализа, было найдено два перспективных метода в классе BaseReaderFragment.java – placeAdViewIfNeeded и removeAdViewIfNeeded.
Код метода placeAdViewIfNeeded:
Самое простое, что пришло на ум после чтения кода, это убрать все лишнее, и оставить лишь вызов return;
Но, как уже было сказано, даже если бы я изменил в java-классе что-либо, я бы не смог в итоге скомпилировать приложение в IDE. Поэтому пришлось искать альтернативу. Оказалось, что smali-файлы, которые создаются в процессе декомпиляции, позволяют также после внесения нужных изменений, вновь собрать модифицированное приложение. Увы, сайт, что был приведен выше, позволял лишь получать исходники, но не собирать новые. Поэтому пришлось искать способы сделать это самостоятельно.
Была найдена утилита ApkTools, которая позволяла декомпилировать и компилировать apk-файлы. Кроме того, потребовалась утилита aapt.exe, которая была взята мной из стандартного SDK под андроид в папке android-sdk\build-tools\20.0.0.
Для удобства вызова утилиты из под windows был создан скрипт apktool.bat:
Для декомпиляции приложения были выполнены команды:
После чего, в полученных исходниках был найден файл BaseReaderFragment.smali и нужные нам методы были изменены следующим образом:
Далее пришла очередь сборки apk-файла из исходников.
Сделать это можно cледующей командой:
Но это еще не все. Чтобы приложение можно было установить, его нужно было подписать цифровой подписью. Самый простой способ сделать это – это скачать архив в котором находится утилита для подписи приложений и цифровые сертификаты к ней.
Распаковываем архив, выполняем команду:
Полученный apk-файл можно загружать на телефон, чтобы проверить наше модифицированное приложение. Однако в процессе тестирования изменений оказалось, что объявления больше не показываются, однако сама страница для их показа создается, что не очень приятно. Снова был проанализирован код приложения, найден класс BaseSeamlessReaderFragment, а в нем метод appendPages.
В нем было видно, что строчка:
создает дополнительную страницу, помимо тех, что есть в главе манги, с параметром, отвечающим за показ объявлений. Было решено удалить эту строчку и посмотреть результат. Снова заглядываем в аналогичный smali-файл(BaseSeamlessReaderFragment$4) и удаляем строчку:
Снова проводим сборку apk-файла из исходников и подписываем наше приложение. После установки и тестирования приложения экран с рекламой окончательно исчез, что и было конечной целью.
Данный пример показывает, что в случае необходимости можно довольно просто и быстро модифицировать уже существующие android-приложения, чтобы добавить в них недостающий функционал или наоборот удалить некоторые нежелательные возможности в тех ситуациях, когда доступа к исходникам нет. Надеюсь он поможет людям, которые попали в похожую ситуацию и не хотят мирится с ней, найти решение проблемы.
Источник