Прошивка Андроид с помощью утилиты FastBoot. Кастомный Android: делаем свою прошивку из стоковой, не копаясь в исходниках Программа для конвертации прошивок android

23.03.2024

Для каждого смартфона или планшета существуют как официальные, так и кастомные прошивки. Их установка осуществляется разными способами: OTA обновления приходят по воздуху, прошивки в ZIP архивах устанавливаются вручную через CWM, TWRP Recovery или приложение ROM Manager, используя компьютер, можно прошить Android при помощи утилит Fastboot и SP Flash Tool.

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

Прошивка Андроид через Рекавери

Неофициальные прошивки в формате ZIP, такие как CyanogenMod, можно установить через кастомное Рекавери: CWM либо TWRP, а также приложения, использующие Recovery, например, ROM Manager. Аналогично шьются ядра и патчи. Для загрузки официальных «Update.zip» хватает возможностей стандартного режима восстановления, подробнее в статье по ссылке выше.

Устанавливаем ZIP файл в CWM

На всех устройствах «из коробки» стоит стоковое Рекавери от производителя, вместо него нужно установить CWM по . Затем найдите и скачайте ZIP архив с прошивкой. Учтите, что прошивки других форматов через CWM не устанавливаются.

1. Теперь переходим в Рекавери. Для этого выключаем аппарат и нажимаем определенное сочетание кнопок. В зависимости от производителя комбинация клавиш отличается, ниже представлены все возможные варианты (в новой написано как зайти в Recovery на конкретных моделях):

  • Громкость вверх + кнопка включения
  • Громкость вниз + кнопка включения
  • Громкость вверх/вниз + кнопка включения + «Домой»
  • Громкость вверх + громкость вниз + кнопка включения

Отлично, вы попали в Recovery. Движение осуществляется при помощи кнопок громкости, а подтверждение выбора кнопкой включения.

2. Перед установкой прошивки необходимо сначала сделать сброс настроек: выберите пункт «wipe data/factory reset».

4. Отлично! Вернитесь в главное меню и выберите «install zip».

5. После этого «Choose zip from /sdcard».

6. Перейдите к папке, в которую сохранили прошивку и выберите ее.

7. Появится запрос на подтверждение действия. Нажмите «Yes – Install…».

8. Пройдет процесс установки прошивки и в конце внизу на экране пояится надпись «Install from sdcard complete».

Замечательно, Android прошился. Возвращаемся в главное меню CWM Recovery и перезагружаем систему. Для этого выбираем «reboot system now».

Как установить прошивку через TWRP Recovery

Если больше нравится не CWM, а TWRP Recovery, прошейте его, руководствуясь . Через него также можно установить прошивку из ZIP архива:

1. Скачайте прошивку и поместите ее в любое удобное место в памяти смартфона.

2. Перейдите в TWRP. Делается это так же, как CWM.

3. Теперь необходимо сбросить систему. Для этого выберите «Wipe» в главном меню.

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

5. По завершению очистки смартфона, планшета нажмите кнопку «Back».

6. Вы вернетесь к главному меню TWRP Recovery. Теперь переходим непосредственно к самой прошивке. Для этого выберите «Install».

7. Перейдите к тому месту в памяти, где сохранена прошивка. Нажмите на нее.

8. Перетяните ползунок вправо для начала установки прошивки.

9. Начнется процесс. Обычно он длится 2-3 минуты.

10. В конце появится сообщение об удачном завершении прошивки. Нажмите на «Reboot System», чтобы загрузить Android.

Рассмотрен еще один способ как прошить Android при помощи ZIP обновления. Также можно воспользоваться специальным приложением. Об этом ниже.

Используем ROM Manager

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

Для работы утилиты нужны root права – они получаются при помощи эксплоитов: , или .

Обязательно должно быть установлено кастомное Recovery (по сути при помощи ROM Manager прошиваете устройство через него, но при этом работаете с простым и понятным интерфейсом приложения, а не Рекавери). Ссылки на инструкции есть в предыдущих пунктах.

Итак, установите ROM Manager , найдите и скачайте нужную прошивку для вашего устройства. Откройте приложение и следуйте инструкции:

1. Поместите.zip архив прошивки в памяти Андроид телефона или планшета.

2. В меню ROM Manager откройте пункт «Установить ROM с SD карты».

3. Найдите архив и нажмите на него.

4. В открывшемся меню выберите «Перезагрузка и установка». Советую поставить галочку напротив «Сохранить текущий ROM», чтобы иметь возможность восстановить систему при необходимости.

5. В следующем окне нажмите «ОК», после чего устройство загрузится в режим Recovery и начнется процесс прошивки.

Также в ROM Manager есть функция поиска ROM для устройства. В главном меню программы выберите «Скачать прошивки». Некоторые из них доступны только в премиум версии программы.

Выше я рассказал о трех способах установки прошивок из ZIP архивов на самом устройстве. Дальше пойдет информация о прошивке Андроид при помощи ПК.

Как прошить Android через компьютер

Многие мобильные девайсы прошиваются при помощи специальных утилит для ПК: ниже инструкции по работе с Fastboot и SP Flash Tool. Через вторую программу производятся различные манипуляции с китайскими телефонами на базе процессоров Mediatek.

Fastboot: инструкция по прошивке телефона

Многие прошивки необходимо устанавливать с компьютера при помощи утилиты Fastboot, перезагрузив мобильный девайс в одноименный режим. Программа входит в Android SDK Platform Tools, об установке которых рассказано в . Кроме того понадобятся драйверы (вся информация есть по ссылке).

Также на устройствах некоторых производителей сначала необходимо разблокировать Bootloader:

  • Как сделать на HTC: ,

Далее скачиваем архив с нужной прошивкой и разархивируем его в папке «platform-tools», в которой находятся «ADB» и «fastboot». Должно получится приблизительно так (у меня нужные компоненты находятся в отдельной папке «adb»).

Затем подключаем Android к компьютеру по USB и переводим смартфон либо планшет в fastboot mode. Проще всего это сделать следующим образом:

  1. Включаем
  2. На компьютере переходим в командную строку
  3. Последовательно вводим команды и после каждой нажимаем «Enter»:

cd путь к файлу "adb"

Например, он находится в «C:\Program Files (x86)\Android\android-sdk\platform-tools». Тогда путь будет выглядеть так:

cd Program Files (x86)\Android\android-sdk\platform-tools

Затем Android гаджет перезагрузится в режим fastboot.

Перед тем как прошить какой-либо из разделов системы, сначала его нужно отформатировать, чтобы не возникло проблем в работе. Для этого используйте команды (после ввода каждой нажимайте «Enter»):

fastboot erase boot

fastboot erase userdata

fastboot erase system

fastboot erase recovery

fastboot erase cache

После очистки разделов их можно прошивать. Вводите команды (их количество может быть больше – все зависит от наличия определенных файлов в той или иной прошивке, ниже представлен набор основных):

fastboot flash boot imya-fayla.img

fastboot flash userdata imya-fayla.img

fastboot flash system imya-fayla.img

fastboot flash recovery imya-fayla.img

fastboot flash cache imya-fayla.img

«Imya-fayla.img» — это название соответствующего файла прошивки. Например, поскольку в моем случае шьется Recovery и его образ так и называется «recovery.img», я ввожу:

fastboot flash recovery recovery.img

Обычно прошивку можно установить целиком, то есть прошить все файлы сразу. Для этого в папке с файлами прошивки должен находится «flash-all.bat». Если он есть, тогда просто введите эту команду и начнется процесс установки прошивки:

В итоге в конце появится сообщение об успешном завершении прошивки.

Можно загружать систему. Для этого нужно выйти из fastboot mode на самом устройстве или при помощи компьютера. Во втором случае нужно ввести еще одну команду:

Установка ZIP обновлений в Fastboot

Используя Fastboot можно установить ZIP прошивку. Для этого скачайте и поместите прошивку в папку, где находится «ADB». Переведите смартфон или планшет в fastboot mode и введите команду:

fastboot flash zip imya-fayla.zip

«Imya-fayla.zip» – это название вашей прошивки, замените его на свое.

Дождитесь завершения установки Android и перезагрузите устройство.

SP Flash Tool: прошиваем китайские Android смартфоны на MTK

Китайские смартфоны Fly, Lenovo, Xiaomi, Meizu, ZTE, Doogee, Bluboo, UMI, Elephone, Oukitel, Blackview и другие, работающие на базе процессоров MTK, прошиваются специальной утилитой SP Flash Tool. Она умеет шить отдельные разделы, форматировать систему и создавать резервные копии. Поддерживаются модели на MT6572, MT6577, MT6580, MT6582, MT6589, MT6592, MT6750, MT6737, Helio P10, Helio P20, Helio X10, Helio X20 и других менее популярных чипах.

Актуальная версия программы доступна на сайте: http://spflashtool.com/ . Перед началом процесса установите драйвера USB под процессор MTK (ссылка на FAQ находится в пункте «Fastboot» данной инструкции).

1. Разархивируйте папку SP Flash Tool на диске «C:\», рядом «положите» прошивку. Путь к файлам не должен содержать кириллических символов.

2. В папке находится файл «flash_tool». Запустите его.

3. В поле «Download-agent» уже будет указан путь к «MTK_AllInOne_DA.bin». Далее нужно нажать «Scatter-loading» и выбрать scatter файл в папке с прошивкой.

4. Переключатель оставляем на «Download Only» и отмечаем какие разделы нужно прошить (по умолчанию выделены все).

5. Нажимаем «Download». Затем выключаем телефон, вынимаем батарею на несколько секунд, вставляем обратно и подсоединяем выключенный Android смартфон к компьютеру по USB.

6. Сначала появится красная полоса «Download DA 100%».

7. Затем желтая с процессом прошивки. Проценты отображают насколько близок конец установки.

Все прошивки для планшетов на процессоре Allwinner имеют один и тот же формат img (IMAGEWTY).

После долгих поисков я все-таки нашел программу, которая позволяет разобрать и собрать прошивку для планшетов на базе Allwinner. Называется она unPacker

Перейдем непосредственно к разборке файла прошивки.

Разборка IMG файла

Для разборки потребуется:

  • Файл самой прошивки
  • Программа unPacker, которую можно скачать (Для Allwinner a31s можно использовать imgRePacker)

Скачиваем архив и распаковываем. Запускаем программу unPacker.exe

Перетаскиваем в это окно наш файл и ждем распаковки.

После окончания распаковки появится новая папка название «прошивки.img.dump»

В папке out есть файл system.fex -это файл с системными файлами(папка system) . Он то нам и нужен.

Редактирование файла system.fex

Для редактирования этого файла нужна nix система и утилита для конвертации, которую можно скачать

Создаем в домашней директории папку в которой будем редактировать нашу прошивку. Назовем ее например NEW. Теперь распаковываем файлы из архива ext4_utils.zip в папку NEW. Запускаем терминал и набираем

Программа скомпилируется и мы получим инструмент для редактирования Sim2img. Теперь кладем в папку NEW наш файл system.fex и переименовываем его в sytsem.img

Вводим в терминале

./simg2img system.img output.img

Теперь у нас есть файл output.img . Теперь создаем папку например с названием sys

И монтируем туда наш файл output

sudo mount output.img sys

Теперь в папке sys находятся файлы, которые можно редактировать. Например можно внести изменения в файл build.prop, которые улучшат работу системы.

После редактирования начинаем сборку

./mkuserimg.sh -s sys/ ./factoryfs_custom.img ext4 ./temp 512M

Полученный файл factoryfs_custom переименовываем в system.fex.iso

примечание: можно аналогично редактировать и другие файлы образов (boot и bootloader)

Сборка

Теперь что бы собрать отредактированные файлы в необходимый для прошивки формат, нужно файл system.fex.iso поместить с заменой в папку (на Windows) _iso и перетащить папку

Практически у каждого пользователя android смартфона появлялось желание создать или отредактировать прошивку под свои нужды и желания. В данной статье мы и рассмотрим принцип редактирования прошивки для CWM (в zip формате).

Подготовка:

В первую очередь необходимо определиться какую прошивку будем брать за основу. Лучше использовать офф. прошивку в зипе. Почти для каждого распространённого девайса существует чистая прошивка + root.
Когда прошивка выбрана её необходимо скачать в любое удобное вам место на ПК (распаковывать не стоит).
Также нам потребуется архиватор, советую использовать 7zip и лучший в своём роде текстовый редактор Notepad++ .

Структура прошивки:

Открывая архив с прошивкой вы видите следующее:
META-INF - в папке хранятся скрипты установки прошивки.
system - папка со всеми файлами прошивки (приложения, твики, скрипты и т.д.).
boot.img - ядро системы.

Практически все манипуляции проводятся в папке system , её структура:
app - системные приложения.
bin - ресурсы самой системы.
etc - Скрипты, твики, конфиги, профили и настройки системы.
fonts - Системные шрифты.
framework - здесь хранятся главные файлы системы (графика, настройки текста анимации и т.д).
lib - библиотеки системы.
media - файлы мультимедиа (мелодии уведомлений, анимация загрузки, обои и т.д).
usr - настройки не изменяемые в дальнейшем системой (работают в режиме "только чтение").
xbin - опять же системные конфиги и прочие твики.
build.prop - инфа о системе, настройки локали и производительности системы.

Приложения:

Перед тем как добавлять/удалять софт в систему, необходимо проверить деодексирована ли ваша прошивка (то есть проверить наличие файлов.odex в папке app. Если файлы есть, то необходимо от них избавиться вот по этой инструкции .
Добавляем софт в прошивку:
Прежде всего необходимо установить себе в смарт те программы которые вы хотите добавить в сборку. После установки достаём их из системы при помощи Root Exporer и его аналогов, находятся они по пути data/app , так же нам понадобятся их либы (если они конечно есть) они находятся по пути data/data . Находятся они в одноимённой приложению папке и имеют расширение .so . Затем изъятые .apk файлы кладем в архив по пути system/app и файлы с расширением .so (lib"ы) по пути system/lib .
Удаляем софт из прошивки:
Тут всё просто, заходим в папку app - определяемся что нам не нужно и удаляем весь ненужный софт (систему лучше не трогать).

Язык и версия прошивки:

Копируем файл build.prop на рабочий стол. Открываем его блокнотом и находим строчки:

ro.product.locale.language=en
ro.product.locale.region=US

для русского языка необходимо сделать так:

ro.product.locale.language=ru
ro.product.locale.region=RU

название своего мода вписываем в строку

в том же build.prop

Графика:

Вся графическая часть прошивки хранится в двух файлах framework-res.apk путь к файлу systemframework и SystemUI.apk по пути systemapp . А графическая часть приложения настройки хранится естественно в приложении Settings.apk .

Скрипты и твики (ускорение и оптимизация системы):

Большая часть настроек проводится в файле build.prop , по этому поводу можно прочитать . Так же если ваше ядро поддерживает init.d есть ряд скриптов для оптимизации системы, один из них описан в этой статье (оптимизация оперативной памяти) и в данной статье Скрипты-твики для init.d

Замена шрифтов системы:

Как выше излагалось все шрифты содержаться в папке fonts , основные шрифты это: DroidSans.ttf и DroidSans-Bold.ttf их можно заменить любыми шрифтами переименовав их аналогично вышеуказанным и переместить с заменой в архив с прошивкой в папку fonts .

Ядро:

Теоретически достаточно заменить boot.img своим, но в некоторых случаях Ядра сопровождаются дополнительными скриптами. По этому советую ничего не делать если есть какие либо сомнения.



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

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

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

Каждое действие с собственными Андроид-устройствами пользователь осуществляет на свой страх и риск. За возможные негативные последствия использования методов, описанных на данном ресурсе, администрация сайта ответственности не несет!

Подготовка

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

Установка драйверов

Бэкап системы

Если существует малейшая возможность, перед прошивкой обязательно осуществляется создание полной резервной копии существующих разделов памяти устройства. Необходимые для создания бэкапа действия описаны в статье: Как сделать бэкап Android-устройства перед прошивкой

Загрузка и подготовка необходимых файлов

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

Перезагрузка девайса в режим bootloader

1. Чтобы устройство принимало команды, посылаемые пользователем через Фастбут, оно должно быть перезагружено в соответствующий режим. В большинстве случаев достаточно послать в девайс со включенной отладкой по USB специальную команду через adb:

adb reboot bootloader

2. Устройство перезагрузится в нужный для прошивки режим. Затем проверяем правильность подключения с помощью команды:

fastboot devices

3. Перезагрузку в режим fastboot можно также осуществить с помощью соответствующего пункта в («Reboot »).

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

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

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

Разблокировка загрузчика

Производители определенного ряда Андроид-аппаратов блокируют возможность управления разделами памяти устройства через блокировку загрузчика (bootloader). Если у устройства заблокирован загрузчик, в большинстве случаев его прошивка через фастбут неосуществима.

Для проверки статуса загрузчика можно послать в устройство, находящееся в режиме fastboot и подключенное к ПК, команду:

fastboot oem device-info

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

Как разблокировать Bootloader

  • Как разблокировать загрузчик (Bootloader) - HTC
  • Как разблокировать загрузчик (Bootloader) - Nexus
  • Как разблокировать загрузчик (Bootloader) - Sony
  • Как разблокировать загрузчик (Bootloader) - Xiaomi
  • Как разблокировать загрузчик (Bootloader) - Huawei
  • Как разблокировать загрузчик (Bootloader) - LG

Запись файлов в разделы памяти девайса

Завершив подготовительные процедуры, можно переходить к процедуре записи данных в разделы памяти устройства. Еще раз перепроверяем корректность загрузки файлов-образов и/или zip-пакетов и их соответствие прошиваемому устройству.

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

Установка zip-пакетов

Для записи в девайс, к примеру OTA-обновлений, или полного комплекта составляющих ПО, распространяемых в формате *.zip , используется fastboot-команда:

update

1. Убеждаемся, что устройство находится в режиме фастбут и корректно определяется системой, а затем делаем очистку разделов «cache » и «data ». Это удалит все данные пользователя из устройства, но является в большинстве случаев необходимым шагом, так как позволяет избежать множества ошибок при прошивке и дальнейшей работе программного обеспечения. Выполняем команду:

fastboot –w

2. Записываем zip-пакет с прошивкой. Если это официальное обновление от производителя, используется команда:

fastboot update update.zip

В других случаях применяем команду

fastboot flash update.zip

3. После появления надписи «finished. total time…. » прошивка считается завершенной.

Запись img-образов в разделы памяти

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

А вот возможность прошивки отдельных образов в соответствующие разделы, в частности «boot », «system », «userdata », «recovery » и др. через Fastboot при восстановлении аппарата после серьезных программных проблем, может спасти ситуацию во многих случаях.

Для прошивки отдельного образа img используется команда:

fastboot flash наименование_раздела имя_файла.img

1. В качестве примера запишем раздел рекавери через фастбут. Для прошивки образа recovery.img в соответствующий раздел отправляем в консоли команду:

fastboot flash recovery recovery.img

2. Аналогичным способом прошиваются другие разделы. Запись файл-образа в раздел «Boot »:

fastboot flash boot boot.img

«System »:

fastboot flash system system.img

И таким же образом все остальные разделы.

3. Для пакетной прошивки сразу трех основных разделов – «boot », «recovery » и «system » можно использовать команду:

4. После завершения выполнения всех процедур аппарат можно перезагрузить в Андроид прямо из консоли, послав команду:

fastboot reboot

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