124 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Установка apk через recovery

Установка apk через recovery

FAQ по созданию патча update.zip для прошивки через рекавери

Редактирование Updater-script. Информация, решения, команды, подпись патчей.
Инструкция по установке системных и пользовательских приложений с помощью recovery
Редактирование установленной прошивки и удаление системных приложений
(ключевые слова)

Напоминаю, тут не стол заказов.. Посты с просьбой собрать zip для «хххх» Recovery оффтоп

Сообщения, не относящиеся к теме обсуждения (оффтоп), удаляются без предупреждения

  • Добавление нескольких пользовательских/системных приложений «за один клик» (одним патчем).
  • Добавление/удаление системных приложений без root прав и вспомогательных программ.
  • Изменение прошивки (замена файлов, украшательства и т.д.).
  • Обновление программы или прошивки.
  • Переразметка памяти (обсуждения в другой теме)
  • Получение root прав SuperUser, SuperSU, Magisk
  1. Установленный на телефоне кастомный рекавери (CWM/TWRP)
  2. NotePad++ (редактор с сохранением Unix формата)
  3. Zip_signer (подписчик архивов)
  4. Архиватор ZIP
  5. Файл-заготовка sample.zip (либо update-binary для ручной сборки)
    Zip_signer.rar ( 13,28 КБ )
    sample-patch.rar ( 4,77 МБ )
    update-binary.rar ( 113,25 КБ )
  6. Дополнительные версии бинарника. binary_all.rar ( 649,36 КБ )
  7. Бинарники (архив/исходники)

Исходники бинарника, основная ссылка:
https://android.google…ootable/recovery/+refs
выбираем к примеру «android-9.0.0_r18» , потом ищем папку «updater», в папке «updater» исходники бинарника

К примеру https://android.google…droid-9.0.0_r18/updater — можно глянуть все команды которые может выполнить бинари в андроид 9.0.0 (в файле install.cpp, в самом низу)

  • Подписчик для Linux: signapk.zip ( 9,24 КБ )
    + Android update-script (Пост Няшная #63580419)
  • Внимание! Патчи создаются только для мод.рекавери и результативно работают только в них. В стоковых рекавери (на аппаратах «из коробки») патчи не работают.

    Для того, чтобы установить новые системные приложения apk в Ваш аппарат, необходимо выполнить три шага:

    1. Собрать свой update.zip (из заготовки sample.zip)
    2. Подписать update.zip утилитой Zip_signer
    3. Закинуть на флэшку и установить в аппарат через ClockWorkMod Recovery

    Эти шаги являются универсальными, т.е. подойдут для выполнения других подобных операций.

    ШАГ №1
    Собрать новый update.zip, используя «болванку» sample.zip
    Порядок использования sample.zip:

    1. Разархивировать архив sample.zip
    2. Удалить файлы подписи META-INF/CERT.RSA, CERT.SF, MANIFEST.MF (т.к. 2м шагом мы их будем создавать для своей сборки)
    3. Поместить в папку /data/app свое пользовательское приложение (xxxxx.apk)
    4. При необходимости отредактировать файл updater-script (подробнее позже)
    5. Заархивировать всё (META-INF и data) ZIP’ом без сжатия

    ШАГ №2
    Подписать update.zip с помощью утилиты Zip_signer
    Порядок использования утилиты Zip_signer:

    1. Переименовать Ваш отредактированный (т.е. уже с приложением внутри) sample.zip в update.zip
    2. Поместить его в папку с программой Zip_signer
    3. Запустить файл zip_signer.bat
    4. Дождаться, пока процесс будет завершен
    5. В папке появится файл update-finished.zip — это и есть подписанный файл
    6. Переименовать update-finished.zip по своему усмотрению (согласно логике патча)

    ШАГ №3
    Установка нового приложения

    1. Перекинуть (переименованный) update-finished.zip на флэшку и установить его в аппарат через TWRP или CWM (install zip from sdcard -> chooze zip from internal sdcard -> Yes, install sample.zip)
    2. Перезагрузить аппарат

    / )

  • Выполняем программу подписи (signapk )
  • Внимание! Патчи создаются только для мод.рекавери и результативно работают только в них. В стоковых рекавери (на аппаратах «из коробки») патчи не работают.

    Корень патча:

    • папка META-INF
    • папка источник установки приложений (system, data, sdcard, cache, sd-ext)
      Обязательные файлы:
    • META-INF/com/google/android/update-binary — системное средство запуска данного патча, также создает временную рабочую папку tmp
    • META-INF/com/google/android/updater-script — выполняемый скрипт по которому и происходят операции копирования и т.д.

    Разберем sample.zip
    Патч добавляет пользовательское приложение MyPiano в Data.

    — Выводит сообщение о завершении процесса.

    • busybox — приложение для выполнения командной строки, устанавливается с кастомным рекавери, находится в ramdisk/sbin. в кастомных прошивках зачастую добавляют его в system/xbin

    Возможные исправления для своих целей

      Изменение прав

    package_extract_dir
    Синтаксис: package_extract_dir(» «, » «);
    Копирует содержимое в . Файлы в имеющиеся в перезаписываются.
    Пример: package_extract_dir(«system», «/system»); Скопирует файлы из папки update.zip/system в /system

    package_extract_file
    Синтаксис: package_extract_file(» «, » «);
    Копирует файл в . Если файл существует, то он перезаписывается.
    Пример: package_extract_file(«test.sh», «/tmp/test.sh»); Скопирует файл test.sh из update.zip в /tmp/test.sh

    format
    Синтаксис: format(«MTD», » «);
    Форматирует раздел (см. приложение).
    Пример: format(«MTD», «system»); Полностью отформатирует /system . Примечание: форматирование удаляет данные необратимо.
    Пример 2: format(«ext4», «EMMC», «/dev/block/mtdblock5», «0», «/system»);
    Определение номера блока под спойлером «инфо и материалы».

    delete
    Синтаксис: delete(» «[, «file2», . «fileN»]);
    Удаляет файл(ы)
    Пример: delete(«/system/app/Calculator.apk»); Удалит Calculator.apk из папки system/app.

    delete_recursive
    Синтаксис: delete_recursive(» «[, «dir2», . «dirN»]);
    Рекурсивно удаляет папку(и) со всем содержимым
    Пример: delete_recursive(«/data/dalvik-cache»); Удалит папку /data/dalvik-cache со всем содержимым.

    run_program
    Синтаксис: run_program(» «[, » «, » «, » «]);
    Запускает программу(скрипт) .
    Пример: run_program(«/tmp/install_busybox.sh»); Запустит скрипт /tmp/install_busybox.sh.

    Читать еще:  Как откатиться с Windows 10 к предыдущей версии системы

    «[, . «pathtofileN»]);
    Устанавливает владельца, группу и разрешения для файла или папки, как ‘chmod’, ‘chown’, и ‘chgrp’ всё в одном
    Пример: set_perm(0, 2000, 0550, «/system/etc/init.goldfish.sh»); Установит владельца, группу и разрешения для файла /system/etc/init.goldfish.sh

    set_perm_recursive
    Синтаксис: set_perm_recursive( , , , , «

    «])
    Рекурсивно устанавливает владельца, группу и разрешения для содержимого папки. — для папок, — для файлов.
    Пример: set_perm_recursive(0, 0, 0755, 0644, «/system/app»); Установит права для содержимого /system/app, для папок — 0755, для файлов — 0644.

    show_progress
    Синтаксис: show_progress( , );
    Продвижение прогрессбара на долю за секунд. может быть нулевым для продвижения его по командe set_progress, а не по времени.
    Пример: show_progress(0.100000, 1); Увеличит прогресс на 0.1 часть за 1 секунду

    set_progress
    Синтаксис: set_progress( );
    Устанавливает положение прогрессбара на долю , для самого последнего вызова команды show_progress.
    Пример: set_progress(0.500000);

    symlink
    Синтаксис: symlink(«

  • «, «
  • «, «
  • «]);
    Создает символическую ссылку (как ‘ln-s’).
  • пишется в формате root:path, а
  • в формате целевой файловой системы (и может быть относительным). Википедия Symlink.
    Пример: symlink(«/data/app_s», «/system/app»); Создаст символическую ссылку на папку /data/app_s для папки /system/app

    «);
    Монтирует в путь

    . должно быть название раздела, если это «MTD», или блок памяти если это «vfat»
    Пример: mount(«MTD», «userdata», «/data»);

    ui_print
    Синтаксис: ui_print(» «);
    Выводит на экран сообщение
    Пример: ui_print(«Formatting SYSTEM. «);

    sleep
    Синтаксис: sleep( );
    Пауза процесса на секунд
    Пример: sleep(5); — пауза 5 секунд, после чего код скрипта выполняется дальше.

    set_metadata / set_metadata_recursive
    Синтаксис: set_metadata (. );
    Устанавливает владельца, группу и разрешения (новая команда взамен set_perm для andriod 4.4.*)
    Примеры: Android update-script (Пост #32151495)
    Создание патча update.zip для прошивки через рекавери (Пост kory-vadim #81945464)

    set_metadata / set_metadata_recursive
    Синтаксис:
    set_metadata(«имя файла», «ключ1», «значение1», «ключ2», «значение2», . )
    set_metadata_recursive(«имя директории», «ключ1», «значение1», «ключ2», «значение2», . )
    Ключи:
    * uid
    * gid
    * mode (set_perm_extd only)
    * fmode (set_perm_extd_recursive only)
    * dmode (set_perm_extd_recursive only)
    * selabel
    * capabilities
    первые три (uid, gid, mode) это тоже самое что и в chmod, заполняется «uid», 0, «gid», 1000, «mode», 06754.
    для установки прошивки хватает трех ключей «uid», 0, «gid», 1000, «mode», 06754.
    Пример: set_metadata(«/system/xbin/shelld», «uid», 0, «gid», 1000, «mode», 06754, «capabilities», 0x0, «selabel», «u:object_r:system_file:s0»);
    set_metadata_recursive(«/system/xbin», «uid», 0, «gid», 2000, «dmode», 0755, «fmode», 0755, «capabilities», «0x0», «selabel», «u:object_r:system_file:s0»);

    команды для Nexus’ов
    block_image_update(«/dev/block/platform/msm_sdcc.1/by-name/system», package_extract_file(«system.transfer.list»), «system.new.dat», «system.patch.dat»);
    Синтаксис: block_image_update(«Путь к блоку раздела», package_extract_file(«список информации для патча (?) «), «образ», «патч образа»);
    я так понимаю, что так прошивается сильно сжатая прошивка (образ системы).
    Еще ifelse
    Пример: ifelse(is_mounted(«/system»), unmount(«/system»)); — если раздел сустем смонтирован дается команда на его размонтирование, если размонтиовать то нечего не происходит.

    Информация по атрибутам set_metadata и подобным командам на Android 4.4+
    Android update-script (Пост blackeangel #50803606)
    Описание откуда берутся «u:object_r:uncrypt_exec:s0» и подобные атрибуты. . .

    Пример скрипта который может удалятьперемещатьбекапить файлы и вести лог действий
    Android Script Creator (Пост Octanium #51085030)

    Используется при отсутствии busybox, либо чтоб не привязываться к его расположению в системе.

    Код «перезагрузки» и «перезагрузки в рекавери» соответственно:

    Когда скрипт выполняется очень быстро (1-4 секунд) я использовал следующий код:

    Т.е. за 3 секунды прогресс бар доходит до 100% (постепенно).
    Число «3» выбрано как [время установки скрипта]+1 сек, чтоб прогресс бар при установке гарантированно двигался и не успел дойти до 100% раньше, чем скрипт установится.

    «[, . «pathtofileN»]);
    Устанавливает владельца, группу и разрешения для файла или папки, как ‘chmod’, ‘chown’, и ‘chgrp’ всё в одном
    Пример: set_perm(0, 2000, 0550, «/system/etc/init.goldfish.sh») Установит владельца, группу и разрешения для файла /system/etc/init.goldfish.sh

    «])
    Рекурсивно устанавливает владельца, группу и разрешения для содержимого папки. — для папок, — для файлов.
    Пример: set_perm_recursive(0, 0, 0755, 0644, «/system/app») Установит права для содержимого /system/app, для папок — 0755, для файлов — 0644.

    «);
    Монтирует в путь

    . должно быть название раздела, если это «MTD», или блок памяти если это «vfat»
    Пример: mount(«MTD», «userdata», «/data»);
    Пример монтирования на андроид 9-10


    Если Вам знакомо что такое Recovery, CWM,TWRP, знаете что такое кастомные прошивки и с чем их едят, то наверняка вы сталкивались с тем что прошивка или обновление не устанавливается выводя при этом ошибку «Status #».

    Как установить APK на андроид — Инструкция

    Если вы столкнулись с проблемой, как установить apk на андроид, то разберемся подробно в ее решении. В магазине Google Play не всегда удается найти то приложение, которое нам необходимо. Операционная система Android позволяет пользователям скачать и установить необходимую программу. Расширение установочного файла для смартфона – apk. Скачать его вы сможете с компьютера сразу на телефон, воспользовавшись браузером.

    Оглавление

    Первые шаги перед установкой

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

    Рис.1 Разрешение установки приложений из неизвестных источников

    Использование этого простого способа делайте в крайних случаях, чтобы обезопасить устройство от вирусов.

    Обратите внимание! Все действия с телефоном Вы совершаете на свой страх и риск. Обязательно сделайте бекап всех настроек и важных файлов.

    Читать еще:  Как восстановить флешку, которая не определяется Windows 7, 8 или 10

    Установка АРК с телефона и применение Recovery

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

    Рис.2 Установка apk на телефоне

    Если у вас возникли какие-то проблемы, то всегда можно вернуться к заводским настройкам, что обеспечит приложение recovery. Recovery также позволяет копировать данные, настраивать системные параметры. Для установки не требуются драйвера, потому что приложение изначально установлено на андроид-устройство.

    Метод установки командой

    Существует также еще один простой способ разрешить эту проблему – установка командой. Проделать весь процесс придется в браузере.

    Загрузите необходимое приложение на смартфон.

    В любом браузере наберите в поисковике content://com.android.htmlfileprovider/sdcard/@@@.apk, где @@@ – название программы, которую необходимо скачать.

    Менеджер приложений и установка apk

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

    Способ установки арк-файлов с помощью компьютера

    Данный способ используется для удобства и практичности. Если вы наладите систему поочередных шагов, то сможете с легкостью устанавливать приложения формата аpk с использованием компьютера. Понадобятся для этой процедуры программа InstallAPK, системные драйвера или ADB (Android Debug Bridge).

    С помощью ADB и выполнения определенных команд можно сделать следующие популярные операции: копировать файлы на ПК, получать отчеты об ошибках или же скидывать приложения с устройства андроид на ноутбук или планшет.

    После того как все из этого будет в наличии на вашем ПК, то вам останется всего лишь кликнуть 2 раза на приложении с аpk-расширением, а дальше вся установка произойдет автоматически. При этом использование ADB поможет вам избежать каких-либо затруднений при работе с аpk на андроиде.

    Рис.3 Установка с помощью ПК

    Этот способ легко поможет вам достичь вашей цели, и при этом он не имеет каких-либо недостатков.

    Последствия установки

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

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

    Как устанавливать мобильные приложения и игры с помощью APK, XAPK и APKM файлов

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

    APK файл (Android Package) – это стандартный формат приложений для Android. По сути, APK файл это сжатый архив, который включает ресурсы и код мобильного приложения. Разработчики приложений и игр загружают эти файлы в Google Play Маркет, а в дальнейшем, пользователи могут устанавливать эти приложения на свой смартфон и планшет.

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

    В настоящий момент, выпускаются APK для четырёх архитектур: armeabi-v7a (arm), arm64-v8a (aarch64), x86 (i386) и x86_64. Многие разработчики выпускают и комплексный установочный файл, включающий поддержку нескольких архитектур, но имеющий больший размер. Если открыть страницу приложения в Play Маркете, вы увидите номер версии и размер приложения для вашего устройства. На устаревших устройствах могут предлагаться более старые версии приложения, если обновление не поддерживается или ещё не выпущено для вашего устройства.

    Зачем устанавливать приложения с помощью APK файлов?

    Иногда, установка с использованием APK является единственным способом получить приложение или игру на своё устройство. Например, приложение не соответствует правилам Google и не доступно в магазине Play Маркет. В таких случаях, их можно скачать на сайтах и форумах, на которых их разместил автор, и установить вручную.

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

    Также, некоторые приложения могут быть не доступны в вашем регионе, и вы не сможете установить их из Play Маркета.

    Читать еще:  Как включить в Windows 10 «режим бога»

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

    Как устанавливать приложения и игры с помощью APK файлов?

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

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

    В Android 7 и ниже:

    1. В любом файловом менеджере нажмите по файлу APK.
    2. В окне предупреждения «Установка заблокирована», нажмите «Настройки».
    3. В открывшемся окне настроек, найдите пункт «Неизвестные источники» и активируйте ползунок.
    4. В окне подтверждения, нажмите «OK».
    5. Вернитесь к файлу APK и нажмите «Установить».

    В Android 8 и выше:

    1. В файловом менеджере или браузере нажмите по файлу APK.
    2. В окне предупреждения, нажмите «Настройки».
    3. В открывшемся окне настроек, активируйте ползунок «Разрешение для этого источника» или «Разрешить установку приложений».
    4. Вернитесь назад и нажмите «Установить».

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

    Что такое файлы XAPK и APKM?

    Из-за некоторых ограничений, введённых Google для публикации приложений в Play Маркет, размер приложения для Android не может превышать определённый размер. Разработчики больших приложений, например мобильных игр, могут использовать дополнительные файлы с ресурсами, которые необходимы для работы приложения или игры и будут скачиваться после её установки и первого запуска.

    Сообщество разработчиков и пользователей придумали новые форматы распространения мобильных приложений, которые позволяют в одном файле хранить все необходимые ресурсы и файлы. Файлы XAPK и APKM – это архивы, которые можут включать несколько APK файлов и дополнительные ресурсы (кэш). Эти форматы набирает популярность на софт порталах, например apkpure.com и apkmirror.com, особенно для скачивания мобильных игр.

    Как устанавливать приложения и игры с помощью XAPK файлов?

    Есть несколько способов установки мобильных приложений и игр с помощью XAPK файлов. Рассмотрим три варианта.

    Вариант 1 – использование мобильных приложений. Для установки XAPK можно использовать мобильное приложение APKPure для Android.

    Для установки XAPK с помощью APKPure для Android:

    1. Откройте приложение APKPure для Android.
    2. Перейдите в главное меню, щелкнув по значку в правом верхнем углу.
    3. Переключитесь на вкладку «Управление APK / XAPK».
    4. Приложение просканирует память устройства и отобразит список найденных установочных файлов APK и XAPK. Нажмите «Установить» напротив нужного вам приложения и дождитесь распаковки и копирования файлов кэша.
    5. После этого начнётся установка извлечённого APK установщика. Подтвердите действие, нажав «Установить» и следуйте инструкции по установке AKP, написанной выше.

    Также, после установки приложения APKPure для Android, файлы .xapk будут ассоциированы с приложением APKPure, что позволит устанавливать их в несколько кликов, щёлкнув по ним в любом файловом менеджере.

    Вариант 2 – использование USB кабеля и компьютера. Для установки XAPK можно использовать приложение Pure APK Install для Windows.

    Для установки XAPK с помощью Pure APK Install:

    1. Включите на мобильном устройстве отладку по USB (найдите в интернете инструкцию для вашей версии Android).
    2. Подключите мобильное устройство к компьютеру с помощью USB-кабеля.
    3. Откройте на компьютере приложение Pure APK Install.
    4. Перетащите .xapk или .apk файл в окно программы Pure APK Install, или используйте кнопку «Open APK file» и укажите путь к файлу.
    5. Появится информация о выбранном приложении: название, версия, размер и минимальные требования. Выберите место установки приложения: встроенное хранилище (Internal android memory), карта памяти (External SD card) или оставьте «Auto select».
    6. Нажмите кнопку «Install».
    7. На мобильном устройстве дождитесь сообщения и подтвердите доступ с компьютера.
    8. Дождитесь завершения установки и нажмите «OK».

    Вариант 3 – извлечение APK файла из XAPK. Скачайте нужный вам файл XAPK и откройте его архиватором, например WinRAR или 7-Zip. Для удобства, можно предварительно изменить расширение файла с .xapk на .zip.

    Извлеките из него файл с расширением .apk и установите его, следуя выше написанной инструкции. Также, скопируйте содержимое папки «Android», в которой находится кэш приложения, в соответствующую папку на вашем устройстве.

    Как устанавливать приложения и игры с помощью APKM файлов?

    Для установки мобильных приложений и игр с помощью файлов APKM доступно официальное мобильное приложение от разработчиков этого формата – APKMirror Installer.

    Установите мобильное приложение APKMirror Installer и скачайте нужные файлы формата APKM в любую папку на устройстве или установленной карте памяти. Приложение APKMirror Installer просканирует ваше мобильное устройство и отобразит список найденных установочных файлов APK и APKM. Для большинства установочных файлов APKM доступны опции установки, такие как архитектура, включённые языки и разрешения экрана.

  • Ссылка на основную публикацию
    Статьи c упоминанием слов:

    Adblock
    detector