Содержание
  • Обновляемая справка на 4PDA
  • Быстрое редактирование
  • Полное редактирование - декомпиляция и сборка
  • Перевод приложений
  • Функция "Антисплит"
  • Создание пользовательской подписи
  • Файловый менеджер
  • Разное
  • MPatcher
  • Быстрое редактирование
    Что такое быстрое редактирование?
    Это редактирование некоторых основных данных приложений без необходимости декомпилирования и пересборки.
    Для чего используется быстрое редактирование?
  • для просмотра информации о приложении (apk), его разрешений и о предпочтительном месте установки (не путать с реальным местом установки);
  • для изменения названия приложения;
  • для изменения имени пакета приложения (клонирование приложения);
  • для замены как векторных (генерируются автоматически), адаптивных, так и обычных растровых иконок в приложениях;
  • для задания предпочтительного места установки приложения;
  • для изменения минимальной или целевой версии SDK;
  • для адаптации приложения для Android TV;
  • для удаления из Манифеста: android:isSplitRequired, android:debuggable, android:testOnly.
  • Для чего нужен пункт "Разрешения"?
    Для просмотра разрешений приложения, а также для их включения или выключения.
    Можно ли конвертировать изображения в вектор?
    Да.
    Поддерживаются форматы PNG, Jpeg, Webp, Svg.
    Преобразование происходит по типу {старое имя файла}_vector.xml
    При конвертации есть возможность улучшить/ухудшить качество изображения.
    Можно ли конвертировать изображение svg в VectorDrawable?
    Да.
    Доступно в предосмотре контуров SVG/VectorDrawable (некомпилированных)
    Примечание: svg должен иметь простую и адекватную структуру, иначе парсер может не обработать должным образом, и придётся его нормализировать вручную, чтобы он отработал, как следует.
    Можно ли преобразовать растровые (bitmap) изображения в VectorDrawable?
    Да.
    Не панацея, может иметь сильную погрешность в трассировке – зависит от сложности геометрии исходного изображения.
    Как заменить иконку приложения?
    1. Подготавливаете необходимую иконку, желатально в формате png и размером, желательно, не более 192x192px.
    2. Выбираете необходимое приложение → Быстрое редактирование.
    3. В левом верхнем углу видите иконку установленого приложения и её название.
    4. Тапаете на саму иконку и выбираете ранее подготовленну иконку.
    5. Если нужно, отмечаете необходимые галочки настроек: "заменить адаптивную иконку" "качественная иконка (больше размер)
    6. Выбираете также файл подписи, если ранее не устанавливали.
    7. Нажимаете "Сохранить".
    Готовый файл будет в той же папке, рядом с выбранным приложением с пометкой mod в конце.
    Как извлечь иконку приложения?
    1. Выбираете необходимое приложение → Быстрое редактирование.
    2. Долгий тап на иконке.
    Извлечённая конка будет в той же папке, рядом с выбранным приложением.
    Как изменить минимальную или целевую версию sdk?
    1. Выбираете необходимое приложение → Быстрое редактирование.
    2. В нужных настройках "Минимальная версия SDK" или "Целевая версия SDK" делаете необходимые изменения.
    3. Нажимаете "Сохранить".
    Готовый файл будет в той же папке, рядом с выбранным приложением с пометкой mod в конце.
    Как изменить имя приложения?
    1. Выбираете необходимое приложение → Быстрое редактирование.
    2. Далее меняете имя нужного приложения на необходимое.
    3. Выбираете файл подписи, если ранее не устанавливали.
    4. Нажимаете "Сохранить".
    Готовый файл будет рядом с выбранным приложением с пометкой mod в конце.
    Почему нельзя поменять "Имя приложения"? (Пункт неактивен.)
    Вероятно потому, что минимальная версия sdk приложения выше, чем версия вашей системы. При таких условиях редактирование ограничено.
    Сначала нужно понизить минимальную версию sdk, а потом редактировать всё остальное.
    Как изменить имя пакета приложения?
    1. Выбираете необходимое приложение → "Быстрое редактирование".
    2. Далее меняете имя пакета.
    3. Выбираете файл подписи, если ранее не устанавливали.
    4. Нажимаете "Сохранить".
    Готовый файл будет рядом с выбранным приложением с пометкой mod в конце.
    Как сделать клон апк в этом приложении?
    1. Выбираете необходимое приложение → "Быстрое редактирование".
    2. Далее меняете имя пакета, например, прибавив или удалив последние буквы в имени.
    3. Выбираете файл подписи, если ранее не устанавливали.
    4. Нажимаете "Сохранить".
    Готовый файл будет рядом с выбранным приложением с пометкой mod в конце.
    Как происходит клонирование приложения при быстром редактировании?
    Программа при быстром редактировании изменяет AndroidManifest.xml и resources.arsc.
    Как адаптировать приложение для Android TV?
    1. Выбираете необходимое приложение → "Быстрое редактирование".
    2. Далее внизу ставим галочку "Адаптировать для Android TV.
    3. Выбираете файл подписи, если ранее не устанавливали.
    4. Нажимаете "Сохранить".
    Готовый файл будет рядом с выбранным приложением с пометкой mod в конце. В качестве банера используется иконка приложения.
    Что делать, если после быстрого редактирования приложение не устанавливается?
    Проверьте, возможно вы просто не подписали пакет?
    В быстром редактировании выберите подпись. По умолчанию стоит "не подписывать", если вы подписью до этого не пользовались.
    Полное редактирование - декомпиляция и сборка
    Что такое декомпиляция и для чего нужна?
    decompile arsc+dex - перевод бинарного (двоичного) кода в понятный человеку. Требуется в случаях редактирования ресурсов приложения (resources.arsc) и ассемблера Smali (кода). А также для функций, которые требуют эту декомпиляцию - для доступа к информации, применения патчей, перевода...

    Для работы рекомпиляции требуется наличие бинарников aapt's. Запрос об установке появляется при первом запуске приложения. Если вы этого не сделали, загрузка осуществляется в "Настройки » Сборка и декомпиляция » Замена инструментов » Загрузить для ... »

    Как декомпилировать приложение?
    1. Выбираете необходимое приложение.
    2. Тапаете на него.
    3. Открывается всплывающее меню.
    4. Выбираем пункт "Декомпилировать".
    5. Отмечаем пункты, которые требуется декомпилировать:
      • "Декомпилировать ресурсы"
      • "Декомпилировать classes.dex" или "Декомпилировать все '*.dex'."
        (Пункт "все *.dex" отвечает за дексы во вложенных папках: например в assets, mthook и т.д.)
      • А также если необходимо и "Декомпиляцию дополнительных ресурсов" с выбором места, куда можно декомпилировать.
    После успешной декомпиляции будет звуковое и диалоговое оповещение, если оно заранее было включено в Настройках.
    Как обратно компилировать приложение?
    1. Внутри проекта нажать на надпись "Собрать проект" над окном проводника.
    2. В окне сборки нужно выбрать инструмент сборки ресурсов – aapt или aapt2.
    3. Также можно указать автоматическое подписывание, если это нужно.
    Лог выводится в режиме реального времени. Можно отслеживать этапы и замечания, ошибки при сборке.
    По завершению лог остановится (это будет видно).
    После успешной компиляции будет звуковое и диалоговое оповещение, если оно заранее было включено в Настройках.
    Внизу также будет предложение сразу установить собранное приложение.
    Куда сохраняется приложение после сборки?
    В папку с разобранным приложением. В корне проекта (рядом с apktool.json)
    Возможна ли одновременная декомпиляция нескольких файлов?
    Да, но лучше декомпилировать несколько подряд, т.к. при одновременной декомпиляции может не хватить памяти.

    Как это сделать?
    Выделяем несколько файлов и по долгому нажатию, открывается меню.
    Внимание! Это работает для однотипных файлов. Если выделено что-то, кроме apk, то пунктов не будет в меню.
    Как изменить папку, куда будут сохраняться apk?
    1. Настройки → "Сборка и декомпиляция" → "Установить выходной каталог установленных приложений"
    2. Перейти в нужную папку, тап по строчке "путь" - установить выходной каталог.
    3. Задать выходной каталог можно ещё прямо в файловом менеджере.
    Что такое пункт "Выходной каталог установленных приложений"?
    Это директория, в которую будут экспортированы/извлечены apk для дальнейшей работы из меню "Приложения".
    Как заменять ресурсы в файле «.apk»?
    Сначала нужна декомпиляция, а после копирование/вставка файлов и сборка.
    Что делать, если приложение не собирается, хотя все сделано без ошибок или я вообще ничего не менял в апк, а просто перекомпилировал?
    Переключить версию aapt.
    Смотреть лог на наличие уровня события Warning.
    В общем, смотреть лог – там должно быть указана причина.
    Какова совместимость с проектами Apktool?
    Apktool M позволяет собирать проекты, разобранные через обычный Apktool.
    Перед сборкой, Apktool M преобразует .yml в .json.
    Сведения о процессе можно отслеживать по логу.
    Может ли Apktool M работать с системными приложениями?
    Да, это возможно.

    Как это сделать?
    Перед операциями с такими apk, нужно импортировать apk-фреймворки через пункт в контекстном меню по этому apk. Импорт проводится на всех таких apk.

    Базовый путь: /system/framework/..

    Они также могут находиться в /system/vendor/framework и т.д. смежных директориях. Если эти директории существуют (редкое явление).

    Пример фреймворков:

    После декомпилировать и компилировать как обычный apk. Для сохранения оригинальных META-INF и манифеста – в настройках декомпиляции включить переключатель "Соответствие оригиналу".

    Пояснение пунктов в разделе "Сборка и декомпиляция"
    Выходной каталог
    Путь, по которому будут экспортироваться/извлекаться установленные приложения из вкладки "Приложения".
    Использовать aapt2
    Добавляет в пункт выбора версии aapt вторую версию инструмента перед сборкой.
    Отладочная информация

    При сборке в файлах Smali сохраняются отладочные данные, такие как .line, .param и т.д.

    Примечание:
    Эти данные требуются исключительно для возможности отладки работы приложения в режиме debuggable. А также для узконаправленной отладки падения Smali в журнале Logcat (редкое явление, может помочь в качестве якоря на строку, вызывающую падение). На выполнение кода они не влияют. Эти данные также могут помочь при редактировании ассемблера Smali в качестве ориентиров и тому подобное (для мододелов).
    Режим отладки
    Записывает в манифесте в тэге <application /> аттрибут android:debuggable значением true. Объявляет системе, что это debug-приложение. Позволяет расширить доступ к логгированию этого приложения. Взаимодействие с работоспособностью этой функции возможно лишь с помощью специальных инструментов (такие есть в Android Studio, а также отладки на уровне ADB, т.д.). Эта не относится к журналу Logcat – количество отладки в системный журнал не изменятся при изменении этого параметра.

    Для указания такого приложения как текущего для отладки – выбрать его в "Системные настройки » Для разработчиков » Приложение для отладки" (пути могут отличаться).

    Полный
    Во время сборки выводит в лог окончательный статус каждого их файлов после его компиляции. Не включать, если не требуется.
    Соответствие оригиналу
    Позволяет сохранить исходный META-INF и хэш манифейста за счёт соблюдения исходных хэшей ресурсов.
    Этот режим позволяет редактировать только Smali – при попытке собрать отредактированный файл в res/..., он будет удалён в конечном apk, т.к. он не соответствует исходному хэшу (модифицирован).

    Вопрос требует уточнения.

    Анализ всех Smali
    Форсирует анализ файлов в Smali.
    Добавлять "APKTOOL_DUMMY"

    По умолчанию, ID ресурсов внутри resources.arsc выставляются по арифметической прогрессии. В некоторых случаях она может быть нарушена – некоторые места внутри типов значений могут быть не заполнены (являются незанятыми).

    На эти места устанавливются с заглушки APKTOOL_DUMMY для восстановления целостности прогрессии. Эти строки никем не используются и ни на что не влияют.

    Небольшое примечание:

    Если удалить объект ресурса из res/values/public.xml, то при сборке он попытается найти такое свободное место и установить в нём свой ID. Если свободных мест нет, он добавится в конце списка объектов из своей категории. Не рекомендуется это делать с ID объектов, которые указаны в Smali – это вызовет падение, т.к. указанный по ID ресурс был перемещён (его больше не существует как такового).

    Удаление public.xml целиком заставит Apktool создать прогрессию с нуля – тогда APKTOOL_DUMMY не будет нигде установлен, т.к нет свободных мест между начинающим и замыкающим ID.

    Нужда в APKTOOL_DUMMY определяется исключительно самим пользователем. Также это может потребоваться, если декомпилированный проект имеет специф. структуру среди ID (в частности из-за кастомных аттрибутов и/или обфускации).

    Форматировать HTML
    Содержимое всех файлов .html и .htm (?) будет отформатированно в соответствии с синтаксисом XML. Это может нарушить выходное отображение страницы HTML. Устанавливается только в случае необходимости.
    Удалять папку "build"

    Во время сборки, файлы DEX и ARSC кэшируются в папку build. Если вы не изменяли ресурсы после предыдущей сборки и вновь собрали apk – .arsc не будет создан вновь, а подхватится из кэшированного экземпляра, потому что его хэш идентичен (не модифицирован). Это также касается Smali (файлов DEX). Ускоряет сборку apk за счёт пропуска повторной компиляции.

    Удаление папки сопровождается лишь освобождением пространства. После чего в процессе следующей сборки, .dex и .arsc будут вновь созданы "с нуля" и папка воссоздастся. Активирование пункта позволяет автоматически удалять папку после успешной сборки. Активировать при желании.

    Всё в выходной каталог
    Все успешно скомпилированные apk будут автоматически перенесены в указанный выше выходной каталог.
    Управление фреймворками
    Позволяет управлять фреймами, импортированными извне. Кнопка сброса очищает список и сами файлы локально, а также восстанавливает res-framework.apk (ID 1) из Apktool M.
    Перевод приложений
    Сколько поддерживается языков для перевода?
    Более 100 языков.
    Какие опции присутствуют в переводчике?
  • Автоматический перевод выбранных строк в ресурсах (strings, arrays,plurals) и smali,;
  • Ручной перевод в ресурсах (strings, arrays,plurals) и smali;
  • Исправление перевода;
  • Онлайн перевод с возможностью выбора из нескольких сервисов перевода;
  • Оффлайн перевод;
  • Поддержка словарей;
  • Создание собственных словарей из имеющегося перевода;
  • Поддержка словарей из MT Manager'а;
  • Объединение языков.
  • Сколько в приложении сервисов для онлайн перевода?
    Три: Яндекс, Google, Bing.
    Не могу найти функцию перевода приложения. Как включить переводчик и перевести приложение (strings.xml) на русский язык?
    Эта функция доступна только, когда приложение декомпилированно.
    1. Декомпилируйте ресурсы нужного apk.
    2. Перейдите в папку с декомпилированными файлами.
    3. Откройте меню файлового менеджера (оно открывается кликом по строке адреса) и выберите пункт "Переводчик".
    Как сделать перевод приложения в автоматическом режиме?
    1. Декомпилировать ресурсы нужного apk.
    2. Перейти в папку с декомпилированными файлами.
    3. Открыть меню файлового менеджера (оно открывается кликом по строке адреса) и выбираем пункт "Переводчик", далее вверху справа нажимаем на три точки и выбираем пункт "Автоперевод".
    4. В открывшемся меню выбираем нужный сервис перевода, например, Яндекс.
    5. В пункте "Исходный язык" можно оставить автоматический выбор " Определить язык" Конечный язык - выбираете нужный. По умолчанию предлагается язык установленный у вас в системе.
    6. Внизу отмечаем необходимые галочки "Объединить,если существует" или "Сохранить только переведённые строки"
    7. Выбираем нужные строки, выделяем.
    8. Нажимаете пункт "Перевести" Будут переведены строки в res/values/strings.
    9. После окончания перевода опять нажимаем вверху справа на три точки и выбираем пункт "Сохранить"
    10. Собираем наш проект (приложение).
    Как сделать перевод приложения в smali автоматическом режиме?
    1. Декомпилировать нужный apk.
    2. Перейти в папку с декомпилированными файлами.
    3. Открыть меню файлового менеджера (оно открывается кликом по строке адреса) и выбираем пункт "Перевод smali",далее вверху справа нажимаем на три точки и выбираем пункт "Автоперевод".
    4. В открывшемся меню выбираем нужный сервис перевода, например, Яндекс.
    5. В пункте "Исходный язык" можно оставить автоматический выбор "Определить язык" Конечный язык - выбираете нужный. По умолчанию предлагается язык установленный у вас в системе.
    6. Выбираем нужные строки,выделяем.
    7. Внизу отмечаем необходимые галочки"Объединить,если существует" или "Сохранить только переведённые строки"
    8. Нажимаем пункт "Перевести"
    9. После окончания перевода опять нажимаем вверху справа на три точки и выбираем пункт "Сохранить".
    10. Собираем наш проект (приложение).
    В "Автоматическом переводе" есть функция "исправлять перевод". Для чего она нужна?
    Для пропуска строк, которые переводить не нужно: true, false, %1$d/%2$d, теперь ещё и векторную графику, референсы и прочее, а так же исправляет немного строки после автоперевода.
    Как сделать перевод приложения в ручном режиме?
    1. Декомпилировать нужный apk.
    2. Перейти в папку с декомпилированными файлами.
    3. Открыть меню файлового менеджера (оно открывается кликом по строке адреса) и выбирате пункт "Перевод smali" и вручную правите нужные строки.
    4. Вверху справа нажимаем на три точки и выбираем пункт "Сохранить"
    5. Собираем наш проект (приложение).
    Как сделать объединение языков, если в дефолтных строках переводимого приложения, отсутствуют необходимые, но есть в других?
    После необходимого перевода приложения, заходим в меню переводчика, выбираем пункт "добавить, добавить из" и добавляем недостающие строки из другой локали. Конечно, затем переводим и их, если надо.
    Какой формат словарей поддерживается в Apktool M?
    *.amd и *.mtd
    Как создать свой словарь из переведённого файла?
    Откройте переводчик, в меню выберите "создать словарь", выберите источник (не переведённые строки) и целевой ресурс (ваш файл перевода) в папке проекта, сохраните.
    Как пользоваться сохраненным словарём?
    При следующем переводе он появится в выборе сервиса перевода.
    Где взять готовый словарь для оффлайн перевода?
    В теме MT Manager'а
    Скопируйте его по адресу "Выходной каталог/dictionary" (по умолчанию это "Apktool_M/dictionary" во внутренней памяти), или же просто импортировать, нажав на файл словаря в программе и добавить его.
    После этого словарь появится в переводчике, в сервисах автоперевода.
    После перевода проект не собирается. Выдаёт ошибку.
    1. Удалить не валидные строки, которые обычно указаны в логе ошибки сборки.
    2. Для сборки используйте aapt1,если не собирается в aapt2 и в нём нет ошибок о не валидных строках перевода.
    3. Возможно, в приложении стоит защита по подписи.
    Функция "Антисплит"
    Что такое Антисплит?
    Это слияние Android App Bundle (сплит) в один установочный файл, а так же установка и извлечение таких файлов.
    Как собрать из сплитов apk? Где находится эта опция?
    1. В контекстном меню "Антисплит". Вызывается коротким тапом по apks/xapk.
    2. В контекстном меню "Антисплит". Вызывается тапом по группе заранее выбранных/выделеных apk.
    Далее выбираем необходимый инструмент компиляции: aapt2 или aapt, если первым не собирается приложение.
    Можно ли собрать apk из установленного сплита?
    Да.
    Выделяем установленное приложение в списке приложений и долгим тапом вызываем пункт "Антисплит".
    Где находится собранный файл?
    apk находится в рабочей папке по умолчанию: внутренняя_память/Apktool_M.
    В конце сборки будет кнопка "Установить", но если долго её удерживать, то откроется папка с файлом.
    Пошаговая инструкция, как конвертировать Apks в Apk с помощью Apktool M.
    1. Выберите нужный файл (Apks) и нажмите на него.
    2. Затем из появившегося меню выберите пункт "Антисплит".
    3. Затем снова нажмите на кнопку "Антисплит" (предварительно убедитесь, что все файлы, то есть все галочки, были включены).
    4. После этого выберите нужный инструмент (aapt2 или aapt если приложение не компилируется) и нажмите кнопку "Выбрать".
    5. Дождитесь завершения всего процесса.
    Теперь ваш Apks превратился в Apk, и теперь вы можете работать с ним, как с обычным Apk файлом.
    Создание пользовательской подписи
    Как создать свою подпись?

    Перейти в "Настройки" → "Подпись", выбрать пункт "Создать ключ".

  • В настройках подписи можно задать имя RSA/SF файлов, а так же имя создателя для подписи V1

  • В открывшемся меню заполняем строки:

    Алгоритм подписи:
    Разница в длине хэша сертификата (после подписи apk). Оптимальным является SHA256withRSA. Оставляем по умолчанию. MD5 считается небезопасным. Детальные отличия можно найти в Интернете.

    Тип:
    Указывает тип хранилища. По умолчанию JKS (также может быть известен как .keystore). Детальные отличия можно найти в Интернете.

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

    Алиас:
    Псевдоним для ключа. Указывается при импортировании/эксплуатации.

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

    Размер ключа:
    Определяет количество битов (длины) сигнатуры ключа для его считывания. По умолчанию 2048. Увеличение размера увеличивает его криптостойкость, но при этом его сложнее анализировать (медленее). Задаётся по информативной геометрической прогрессии (2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 2048, 4096, и так далее)

    Срок действия:
    Время от даты создания, по которому истекает подлинность ключа. Указывается в годах.

    Следующие данные нужны для информирования о владельце подписи. Указывать по желанию:
    Имя, должность, организация, город, область/штат, страна.

    Кнопка "Сохранить" завершает создание и помещает хранилище ключа по указанному ранее пути.

    Кнопка "Создать и использовать" дополнительно импортирует конечный файл на место пользовательской подписи.

    Есть ли возможность конвертировать хранилища jks/keystore в pk8+x509.pem?
    Да, это возможно.
    Файловый менеджер
    Есть ли в Apktool полноценный файловый менеджер?
    Да.
    Как зайти в меню файлового менеджера?
    Меню открывается кликом по строке адреса.
    Какие в нём есть функции?
  • удаление файлов;
  • копирование;
  • переименование, включая пакетное;
  • создание списка файлов;
  • архивирование;
  • свойства файлов и папок;
  • полноценный поиск;
  • закладки;
  • история последних открытых файлов;
  • диалог свойств апк/апкс файлов - это отдельная тема;
  • предпросмотр векторных xml/svg, а так же преобразование изображений в вектор;
  • предпросмотр шрифтов ttf/otf;
  • пакетные операции с выделенными apk, либо изображениями, по долгому нажатию;
  • в папках проекта, в свойствах файлов ресурсов, есть их ID из public.xml (если есть).
  • Как вызвать контекстное меню при просмотре файлов?
    Долгим тапом на самом файле.
    Какие пункты доступны в контекстном меню?
  • Отправить фаил(-ы)...
  • Открыть в...
  • Удалить.
  • Переименованть.
  • Сжать.
  • Извлечь сюда.
  • Извлечь в "Имя файла"
  • Просмотр содержимого.
  • Свойства.
  • Копировать.
  • Вырезать.
  • MPatcher.
  • Выбрать.
  • Выбрать всё.
  • Копировать имя.
  • Копировать путь.
  • Добавить в закладки.
  • Как выделить файл/папку?
    1. Долгое нажатие на сам файл/папку или на иконку.
    2. После выделения файла/папки долгим нажатием на иконку, можно долгим нажатием на иконку другого файла, выделить файлы "от и до".
    3. Быстро выделить всё можно также долгим нажатием на иконку пункта "назад" (..)
    Как переименовывать файлы?
    По долгому нажатию на файл появляется диалог переименования.
    В этом же диалоге по долгому нажатию на "авто" возможно переименование в автоматическом режим, используя шаблоны.
    Как редактировать файл внешним редактором, прямо из приложения?
    Долгое нажатие на файле → во всплывающем контекстном меню выбрать пункт "Открыть в"...
    Как создать архив файлов?
    Выбрать пункт "Сжать" в контекстном меню. При архивации файлов их можно добавить в уже существующий архив.
    Можно ли в архивах (в том числе и в apk) удалить или заменить файлы/папки без разборки/сборки?
    Да.
    1. Долгий тап на архив/.apk и во всплывающем меню выбираем "Просмотр содержимого".
    2. Долгим тапом выделяете необходимое для удаления или извлечения.
    После необходимых манипуляций файл будет автоматически пересобран и подписан.
    Оригинал сохраняется рядом с расширением .bak.
    Как в разобранном APK заменить файл или папку на уже отредактированную?
    Долгий тап на нужном файле и в контекстном меню выбираем "Извлечь сюда"...
    Если вы хотите, например, заменить картинку в папке drawable, вы должны добавлять с заменой в apk папку res, в которой находится папка drawable, в которой в свою очередь картинка.

    Т.е. важно сохранять структуру каталогов!

    После необходимых действий, обратно заархивируем файл с расширением apk.
    Подписываем.
    Есть ли в Apktool M полноценный поиск?
    Да.
    Есть как поиск по файлам, имени файлов, поиск по тексту в файлах, так и по установленным приложениям.
    Ручной ввод адреса вызывается по долгому нажатию на адрес.
    Есть ли в приложении поиск по регулярным выражениям?
    Да.
    Как начать пользоваться поиском?
    Открыть меню файлменеджера кликом по адресу.
    Не нашёл поиск в папках. Только в файле.
    Надо не зажимать саму папку, а зайти в ту самую папку, где будет поиск, затем, нажать на "стрелку или на путь до папки/файла" и выйдет меню с поиском.
    Сохраняются ли все результаты поиска и как их найти?
    Да. История поиска сохраняется.
    Появляется пункт в меню проводника (клик по адресу вверху), либо долгим нажатием на значок поиска на панели снизу, если она включена там же.
    Также есть возможность искать в самих результатах поиска.
    Если ничего не искали, то пункта этого нет.
    Разное
    Есть ли в Apktool функция клонирования?
    Да.
    Для этого нужна полная декомпиляция приложения.
    Как ещё можно клонировать приложение?
    Воспользоваться патчем в программе MPatcher.
    Как убрать лишние языки из приложения, кроме ru, eng?
    В контекстном меню выбираем пункт "Оптимизировать (aapt2).
    В настройках этого пункта отмечаем галочкой пункт "Задать конфигурацию" и прописываем язык, который необходимо оставить, в данном случае - это "ru, ru-rRU".
    Как убрать все языки, кроме русского, украинского и английского?
    По аналогии с удалением всех языков, кроме русского и английского.
    В пункте "Задать конфигурацию" прописываем языки, которые необходимо оставить, например, "ru, ru-rRU, uk, ru-rUA, uk-rRU".
    Как можно увидеть список установленных приложений?
    Вверху справа - вкладка "Приложения".
    Как отредактировать весь Манифест в приложении?
    Весь манифест редактируется при декомпиляции ресурсов.
    Есть ли встроенный конвертер величин?

    Да.

    Как туда зайти?
    Главный экран → Троеточее в верхнем правом углу → Конвертер.
    Какие поддерживаются величины?
  • Текст ↔ SHA-384
  • Текст ↔ SHA-224
  • Текст ↔ SHA-256
  • Текст ↔ SHA-512
  • Текст ↔ SHA-1
  • Текст ↔ MD5
  • Текст ↔ URL кодировка
  • Текст ↔ Юникод
  • Текст ↔ Base64
  • Текст ↔ Массив (US-ASCII)
  • Текст ↔ Массив (UTF-16LE)
  • Текст ↔ Массив (UTF-16BE)
  • Текст ↔ Массив (UTF-8)
  • Текст ↔ Массив (CP1251)
  • Текст ↔ Массив (ISO-8859-1)
  • Decimal ↔ Octal
  • Decimal ↔ Binary
  • Цвет ↔ Smali
  • Decimal ↔ Hex (0x0)
  • Decimal ↔ Hex (0x00000000)
  • Decimal ↔ Hex
  • Float ↔ Binary
  • Float ↔ Octal
  • Float ↔ Hex
  • Float ↔ Hex (0x0)
  • Float ↔ Hex (0x00000000)
  • Обратите внимание!

    Все шифрования имеющие обратную совместимость - можно конвертировать обратно. Делаеться это в нижнем окне ввода.
    Как обновлять Apktool M?
    Главный экран → Троеточее в верхнем правом углу → "Настройки" → "Обновление программы" включить пункт "Проверять обновления".
    Ниже можно выбрать пункт "Частота проверки обновления".
    Как скачать обновление?
    Из самого Apktool M или загрузить через браузер.
    Куда сохраняется файл обновления?
    Во внутреннюю память в папку "Download".
    Можно ли отключить проверку обновлений?
    Да можно.

    Главный экран → Троеточее в верхнем правом углу → "Настройки" → "О приложении" → "Отключить проверку обновлений".

    Как восстановится из резервной копии? У меня пункт восстановить не активный...
    Чтобы восстановиться, нужно сначала сохраниться.
    Файл резервной копии должен находиться по пути: "/внутренняя_память/Apktool_M.backup", если его нет - пункт не активен.
    MPatcher
    Что такое MPatcher?
    Это приложение для запуска, создания, импорта, экспорта скриптов и патчей, написанных на Shell, интегрированное в Apktool M.
    Есть ли отдельная тема на Форуме?
    Да: MPatcher
    Как вызвать MPatcher?
    Долгий тап на файле и в открывшемся контекстном меню выбираем пункт "MPatcher".
    Это укажет целевой apk.

    Для выбора целевого проекта – выше «Собрать» есть выпадающее меню, там пункт MPatcher.