Создаем Android-прошивку из подручных материалов. Как перепрошить андроид в домашних условиях

Обновление или установка прошивки позволяет устранить множество проблем, связанных с функционированием Android устройства. При длительной эксплуатации системная память мобильных гаджетов засоряется остаточными файлами () («слепками» ранее загруженных программ), вредоносным кодом () и другими ненужными данными. Все это приводит к снижению производительности и быстроты действия процессора и ОЗУ. В результате смартфон (планшет) начинает часто зависать и самостоятельно перезагружаться. И если factory reset () не привел к положительному результату, пользователю остается только самому выполнить обновление ПО. Рассмотрим, как перепрошить телефон, работающий на ОС Android.

Виды прошивок и способы их установки

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

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

Все прошивки Андроида подразделяются на два вида:

  1. Официальные. Поставляются непосредственно изготовителями смартфонов и обычно подходят только к определенной марке. Такие программы считаются самыми надежными, поэтому по возможности ими и следует пользоваться.
  2. Неофициальные (кастомные). Разрабатываются пользователями Android устройств и небольшими фирмами. Они применяются, когда выполняется переустановка Андроид на китайских аппаратах (например, Lenovo, Meizu, Xiaomi и т.п.).

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

Поменять прошивку на Андроид можно несколькими способами:

Подготовка к самостоятельной перепрошивке

Перед тем как переустановить ПО на Андроид устройстве, необходимо произвести ряд подготовительных мероприятий:

  • скачать на ПК программу для обновления ПО (Odin, Kies или SP Flash Tool и найти качественный usb кабель (если переустановка будет проходить с помощью компьютера);
  • (если планируется переустановить Андроид на неофициальную версию);
  • зарядить батарею гаджета на 100%;

Функциональность установленного обеспечения во многом зависит от его версии и сборки. Чтобы новая прошивка спустя некоторое время не начала конфликтовать с «железом», нужно выяснить серийный номер мобильного устройства:

Более детальный порядок обновления Андроид на телефоне рассмотрим на примере Samsung и Lenovo, хотя данная инструкция также подойдет и для многих других торговых марок.

Прошивка смартфона от компании Samsung

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

Перед тем как поменять прошивку на новейшее обеспечение, нужно правильно настроить Kies. Делается это следующим образом:

Настроив Kies, создайте бэкап имеющегося на смартфоне ПО. Это позволит восстановить работоспособность системы в случае неудачной прошивки. Чтобы сделать backup Андроид через ПК, в начальном окне приложения выберите «Резервное копирование», отметьте пункты, которые требуется сохранить, и запустите процедуру, нажав соответствующую кнопку.

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

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

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

Замена прошивки на планшете Lenovo через ПК

Перед тем как прошить планшет Леново, нужно уяснить, что софта, разработанного специально для этого бренда, нет. Поэтому приходится довольствоваться универсальными разработками. Одним из таких приложений является SP Flash Tool. Рассмотрим, как сделать обновление ПО на Lenovo посредством данной утилиты:


После того как обновить прошивку вам удалось, проверьте работоспособность всех функций планшета.

Термином перепрошивка называется процесс переустановки в мобильном устройстве системного программного обеспечения, попросту говоря – переустановка операционной системы. Перепрошивают Android-девайсы с разными целями:

  • Кому-то нужно установить более новую версию ОС;
  • Кому-то необходимо устранить серьёзные неполадки в системе, и он просто делает перепрошивку;
  • Кто-то желает взломать защиту Android, завладеть чужим устройством;
  • Другие просто пробуют разные прошивки, как официальные, так и самодельные (кастомные).

Так как перепрошить Андроид самостоятельно?

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

Как перепрошить андроид без компьютера

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

Как перепрошить андроид самому через CWM Recovery

Кастомный неофициальный инструмент (инженерное меню или админпанель) имеет более богатую функциональность, чем официальный Recovery. Но для его использования необходимо его инсталлировать в гаджет с помощью ClockWorkMod Recovery.

Перед перепрошивкой следует сделать откат системы до заводских установок, то есть провести процедуру сброса. После последнего пункта в сбросе – «Yes – Wipe al», вы соглашаетесь, и устройство сбрасывает настройки, загружается снова инженерное меню. Теперь необходимо выбрать строку с «Install zip», далее перемещаемся к пункту выбора места хранения файла с новой прошивкой, которую вы предварительно скачали с сайта производителя «Choose zip from /sdcard», указываете этот файл, и соглашаетесь с инсталляцией.

Теперь девайс не трогаем, ждём окончания процесса, когда на экран выплывет сообщение «Install complete». Далее возвращаемся в начальный раздел Recovery, и через соответствующий пункт ребутим гаджет для сохранения результата. Если смартфон не будет проявлять себя минут десять или более, не паникуем, ждём до получаса, потом решаем, что делать. Процесс часто бывает долгим.

Как перепрошить андроид через пк

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

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

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

Не имея мощной антивирусной программы, владельцы устройств под управлением «Андроид» закачивают множество различного контента с неизвестных источников и подвергают систему риску.

Конечно, полностью привести гаджет в нерабочее состояние достаточно трудно, а вот напрочь «снести» несчастный Андроид – вполне. Тогда и возникает вопрос перепрошивки устройства, а как сделать это самому мы и расскажем в этой статье.


Существует два способа : с помощью компьютера и без. Если вы склоняетесь к последнему варианту, обязательным условием такой переустановки является наличие карты памяти, ведь сам установочный файл «операционки» будет находиться непосредственно на ней. Итак, кратко рассмотрим процесс.

Перепрошивка с помощью компьютера

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

Как сделать прошивку на Андроид самому

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

Тут можно найти не только прошивку, но и «программу-перепрошивальщик», которая нам также понадобится. Например, для «самсунгов» это программа «Odin», для «сони эриксон» – «PC Companion», а вы должны найти версию такой утилиты под свое устройство. После загрузки прошивки, ее нужно «перекинуть» в такую программу и начинать работу.

Итак, вам нужно:

  • Ваш гаджет;
  • USB-шнур;
  • Программа для перепрошивки;
  • Прошивка.

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

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

Всем привет! Сегодня мы с вами рассмотрим самые простые и удобные методы перепрошивки вашего смартфона (или планшета).

Статья разделена на следующие разделы:


Зачем нужна перепрошивка?

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

Какие есть способы прошивки?

Всего их два, но каждый в свою очередь разделяется еще на несколько.

  1. Прошивка с помощью телефона.
  2. Прошивка с помощью компьютера.

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

Необходимая подготовка перед процессом прошивания

Все это нужно сделать, дабы не было срывов установки новой ОС.

  • Полностью зарядите устройство и ваш компьютер;
  • Сделайте резервную копию старой ОС;
  • Проверьте исправность USB-провода.

Делаем бэкап

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

  1. Зайдите в настройки вашего устройства.

2. Выберите пункт «Сведенья о системе» и раздел «Память».3. Теперь нажмите кнопку «Резервная копия».

4. Теперь все просто: сделайте бэкап, выбрав нужные для сохранения пункты, как показано на картинках.

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

Прошивка с помощью FASTBOOT

Теперь, когда все возможные меры безопасности предприняты, можно приступать к прошивке.
Для начала скачайте Fastboot на компьютер. Загрузочную папку программы сделайте в корневом каталоге диска С. Например, С:\fastboot. В этом случае вам будет проще прописывать место нахождения прошивки в дальнейшем.

Установочный файл можно скачать по ссылке (утилита для отладки Android).

Сначала разблокируем Bootloader
Bootloader – это программа вне системы андроид, которая обеспечивает доступ к ядру устройства. Его можно сравнить с BIOS на компьютере.
Разблокировав его, мы получим root-права – открытый доступ к системе. На устройствах различных производителей это делается с помощью разного программного обеспечения. Но алгоритм работы один, и он такой:

  1. Вы скачиваете и устанавливаете программу для разблокировки соответственно с производителем устройства.
  2. Затем подключаете смартфон по USB-шнуру в режиме отладки.
  3. Открываете скачанную программу, выбираете ваше устройство и нажимаете «Unlock».

Пример разблокировки
Вот пример разблокировки устройства производства компании HTC.
1. Скачайте и установите HTC Bootloader Unlock .
2. Затем подключите устройство к компьютеру в режиме отладки. Тут все довольно просто: войдите в раздел настроек «Для разработчиков» и выберите пункт «Отладка по USB».

3. Теперь откройте, скачанную программу и подтвердите отладку (на android-устройстве).

4. Осталось просто разблокировать, нажав кнопку «Unlock». На самом деле процесс можно выполнить через командную строку Windows. Это программа лишь автоматизирует процесс разблокировки.

5. Для выхода из HTC Bootloader Unlock нажмите «Finish» после окончания процесса разблокировки botloader-а.

Примечание: есть программы разблокировки для смартфона или планшета любого производителя. Например:
Nexus – Nexus Root Toolkit;
Samsung – Kies;
Sony – Sony Bootloader Unlock.
Если ваше устройство другого производителя – просто поищите в Интернете соответствующую утилиту.

Процесс прошивки

  1. Первое, что нужно сделать – подключится к компьютеру в режиме отладки по USB. Как именно это сделать, описано чуть раньше.
  2. Сначала переместите новую прошивку в каталог С:\fastboot

3. Теперь переведите устройство в fastboot mode. В командной строке введите команды, как показано на скриншоте.

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

  • fastboot erase boot
  • fastboot erase userdata
  • fastboot erase system
  • fastboot erase recovery
  • fastboot erase cache

5. А вот теперь уже можно и начинать прошивку. С папки с прошивкой (папка «fastboot») запустите bat-файл flash-all. Вот так это выглядит в командной строке:


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

Перепрошиваем с помощью программы ODIN MULTI DOWNLOADER

1. Для начала вам необходимо подключить телефон к компьютеру с помощью USB- кабеля, в режиме откладки. После этого обязательно запустите программу Odin Multi Downloader от имени администратора.

2. Затем укажите место расположения прошивки, которую вы хотите установить. Вот, что нужно сделать: нажмите на кнопку BOOT и выберите файл прошивки.

Примечание: если ваша прошивка состоит из нескольких файлов (в основном их три), то путь нужно указывать соответственно:
файл PDA – в поле «PDA»;
файл Phone – в поле «Phone»;
файл CSC – в поле «CSC»;
3. Теперь необходимо перезагрузить телефон. Это можно сделать с помощью комбинаций клавиш (громкость вверх + кнопка блокировки экрана + центральная кнопка). В итоге, компьютер должен распознать телефон, тем самым на экране, появиться желтое поле с названием порта COM.

4. После нажатия вами кнопки «Start» начнётся обновление системы. В это время запрещается отсоединять телефон от компьютера. В процессе установки смартфон будет перезагружаться несколько раз, но на это не стоит обращать внимания. После удачной прошивки (время которой занимает около 10 минут) на экране компьютера, появиться слово «PASS».

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

Прошивка Android-устройства LG с помощью программы KDZ UPDATER

Если у вас есть телефон или планшет от производителя LG, то его будет проще, да и правильнее, прошить с помощью программы KDZ Updater . Как именно это сделать?
1. Сначала скачайте программу KDZ Updater. Собственно, это архив, который нужно распаковать в папку, находящуюся в корне системного диска C вашего компьютера.

2. В эту же корневую папку добавьте нужную вам прошивку. Здесь исполняемый файл программы, только так прошивка будет видна программе.

3. Обязательно установите файл политики действий под названием msxml.msi
4. Теперь включите режим отладки по USB. Как именно это сделать описано выше.
5. Переведите устройство в режим S/W Upgrade. А именно:

  • выключите его;
  • достаньте батарею;
  • зажмите клавишу уменьшения громкости и вставьте USB-кабель.
  • появится соответствующая надпись – «S/W Upgrade».

Примечания:
если войти в режим S/W Upgrade не удалось, значит, попробуйте проделать все вышеописанные действия, не вынимая батарею;
также попробуйте вместо клавиши уменьшения громкости зажать обе «звуковые качельки»;
для того, чтобы прошивка стала возможной нужно отключить программу LGE Mobile USB Modem в Диспетчере устройств.

6. Теперь пора начать перепрошивку. Запустите от имени администратора исполняемый файл программы KDZ_FW_UPD.exe из корневой папки на диске C.
Примечание: наведите на иконку программы и кликните правой кнопкой мыши. Выберите пункт «Запуск от имени администратора».

7. Установите все параметры, как показано на скриншоте и нажмите «Launch software update».

8. Через некоторое время (примерно 10 минут) прошивка завершится. Просто перезагрузите устройство и пользуйте новым интерфейсом.

Прошивка смартфонов и планшетов от Lenovo

Почему эту тему я тоже вывел отдельно? Потому, что для устройств Lenovo есть свои нюансы, которые создают определенные сложности. Однако есть и программа, которая их компенсирует. Чем именно? Простотой использования и своим интуитивно понятным интерфейсом.
Итак, начнем.
1. Вам нужна программа для прошивки SP Flash Tools. Скачайте ее .
2. Для продолжения прошивки нужно установить драйвера на устройство. Как правило, при подключении они автоматически не устанавливаются. Поэтому нужно делать это вручную.
скачайте драйвера, соответственно модели вашего устройства;
вводите в диспетчер устройств на компьютере (выше показано, как это сделать);
выключите устройство;
подключите устройство через USB-провод к компьютеру;
нажмите правой кнопкой мыши на появившееся устройство (неопознанное) и выберите пункт «Установить драйвер из указанного места»;
выберите драйвер.

3. Теперь запустите SP Flash Tool. И укажите путь исполняемому файлу прошивки (скаттер-файлу). Нажмите на «Scatter Loading».

5. И только сейчас подключите устройство к компьютеру.
6. После завершения перепрошивки вас будет уведомлено об этом, посредством появления на экране компьютера ярко-зеленого кольца.

При включении устройства первая загрузка системы будет длиться довольно долго (5-10 минут). Так и должно быть, не волнуйтесь.

Краткие итоги

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

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

Введение

Существует три способа создания собственной прошивки для Android-коммуникатора: 1. Допиливание и компиляция операционной системы из исходников, публикуемых компанией Google или командой CyanogenMod. 2. Модификация стоковой прошивки коммуникатора. 3. Модификация сторонней прошивки, созданной с помощью первого или второго способа.

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

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

Выбираем подопытного

Итак, предположим, что наш коммуникатор уже зарутован и в загрузочную область записана консоль восстановления ClockworkMod, позволяющая устанавливать на аппарат любые прошивки без всяких ограничений (о том, как это сделать, мы писали в статье «Тотальное подчинение», опубликованной в октябрьском номере ][). Теперь мы хотим установить на устройство другую прошивку, да не абы какую, а с собственными модификациями, настройками и набором ПО. Поэтому нам нужен каркас, а именно чужая прошивка, стабильно работающая на нашем устройстве. Где ее взять?

Главное место обитания всех ромоделов - это, конечно же, форумы xda-developers.com. Там можно найти все что угодно для коммуникаторов, работающих под управлением iOS, Windows Mobile, Windows Phone и Android. Открываем сайт в браузере, жмем на раздел Forums и ищем в списках форумов свой коммуникатор. Далее заходим в соответствующий раздел Android Development и внимательно просматриваем список тем, содержащих в названии слово «». Лучше найти какую-нибудь чистую прошивку с названием вроде «Pure Android 2.3 Rom» или порт CyanogenMod, хотя, в сущности, подойдет и любая другая (правда, возможно, придется отменять авторские изменения). Открываем тему, проматываем первый пост, находим где-то в конце ссылку на скачивание и загружаем ROM на свой комп.

Теперь файл прошивки нужно вскрыть. Делается это с помощью самого обычного unzip:

$ mkdir ~/rom; cd ~/rom $ unzip ../путь/до/прошивки.zip

Общая структура каталогов и важные файлы

Набор файлов и каталогов, образовавшийся в результате выполнения предыдущей команды, и есть, в сущности, операционная система Android, причем ровно в том виде, в каком она будет размещена в NAND-памяти устройства. В зависимости от версии Android и фантазии автора, она может содержать разные наборы каталогов и файлов, однако в ней всегда присутствуют три обязательных объекта: META-INF, файл boot.img и директория system.

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

Файл boot.img содержит загрузочный образ, который включает в себя ядро Linux и образ initrd. Его можно распаковать, однако для нас он не несет особой пользы, так как почти любые системные параметры можно изменить с помощью файлов настроек и файловой системы /proc. Если же тебе требуется ядро, собранное с особыми параметрами, например с активированным планировщиком BFS или поддержкой NFS, то почти наверняка его можно найти на том же xda-developers и прошить с помощью ClockworkMod.


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

  • app - предустановленные приложения: телефон, калькулятор, календарь и т. д.
  • bin -аналог каталогов /bin и /usr/bin в Linux. Содержит различные системные компоненты, используемые более высокоуровневыми компонентами системы. Например, именно здесь лежит виртуальная машина dalvikvm.
  • etc - файлы настроек. Полный аналог /etc в Linux, используемый, однако, только системными компонентами. Приложения Android хранят настройки в каталоге /data/data.
  • fonts - шрифты. По умолчанию содержит только фирменные шрифты Droid (или Roboto в Android 4.0).
  • framework - наборы Java-классов, используемые системой и Android-софтом. Тут же лежит файл framework-res.apk, содержащий полное описание интерфейса операционной системы, включая все графические файлы.
  • lib - Linux-библиотеки, используемые низкоуровневыми компонентами системы. Аналог каталогов /lib и /usr/lib в Linux, включает такие стандартные библиотеки, как libc (правда, Android использует собственную Bionic вместо Glibc), libz (gzip-шифрование), libssl и другие.
  • media - медиафайлы: рингтоны, звуки уведомлений, звуки интерфейса и файлы анимации загрузки ОС.
  • tts - файлы, необходимые для работы синтезатора речи.
  • usr - необязательный каталог, который обычно содержит файлы, необходимые для работы софтин из каталога bin. По сути, аналог /usr/share.
  • vendor - файлы, поставляемые производителем аппарата. Обычно содержит бинарную firmware для различных «железных» компонентов, например модуля Wi-Fi.
  • xbin - необязательный каталог, который содержит все, что не вошло в bin. Как правило, используется для хранения полезных утилит, тем не менее необязательных для работы системы (top, текстовый редактор). CyanogenMod использует его для хранения инструментов администрирования: bash, ssh, powertop, busybox и т. д.
  • build.prop - файл, содержащий информацию о сборке, а также различные низкоуровневые настройки.

Kоманда setprop

Приведенные в статье настройки build.prop можно применить и в уже работающей системе с помощью команды setprop:

# setprop debug.sf.nobootanimation 1

Собственный набор ПО

Каталог /system/app содержит все предустановленное в прошивку ПО. Удаляя и добавляя пакеты в этот каталог, мы можем изменить набор приложений, доступных «из коробки». Например, ни для кого не секрет, что стандартный ланчер Android (да и ADWLauncher в CyanogenMod) тормозит и имеет многочисленные недостатки. ОK, заменим его на LauncherPro :

$ rm system/app/Launcher.apk $ wget goo.gl/U9c54 -o system/app/LauncherPro.apk

И это все. Не надо ничего устанавливать, не надо нигде ковыряться, просто закидываем нужное приложение в каталог - и готово. Даже имя не имеет значения, Android сам найдет нужное приложение и установит его в качестве домашнего экрана. Таким же образом можно поместить в прошивку любую другую программу или удалить ее оттуда.

Полезно поместить в прошивку одно из приложений для поиска утерянного смартфона (например, prey), тогда даже в случае сброса до заводских настроек оно останется в ОС и будет работать. Также можно заменить некоторое системное ПО, например добавить Dialer One вместо стандартного Phone.apk или Go SMS вместо sms.apk.

Как насчет системных Linux-приложений, например ssh-сервера или mc? Здесь тоже все просто. Собрать софтину для Android и процессора ARM можно с помощью комплекта NDK от Google, но большинство нужных приложений уже собрано до нас. Например, мы хотим предустановить mc в свою прошивку. Идем на xda-developers и выполняем поиск по запросу Midnight Commander. На первой же странице находим apk-пакет с установщиком и распаковываем его с помощью все того же unzip:

$ cd /tmp; unzip ~/NativnuxInstaller_1.1.apk

Видим в списке распакованных файлов assets/kits/mc-4.7.5.4-arm.tar.jet. Это архив tar.gz, который распаковывается в корень системы после установки apk-пакета (а точнее, после установки apk, запуска приложения и нажатия кнопки Install). Мы можем сразу распаковать его в нашу прошивку и получить предустановленный mc:

$ cd ~/rom $ tar -xzf /tmp/assets/kits/mc-4.7.5.4-arm.tar.jet

Теперь для запуска файлового менеджера на устройстве достаточно открыть терминал и набрать mc. Другие приложения могут распространяться в zip-архивах для прошивки с помощью ClockworkMod Recovery. Поместить их в свой мод еще проще, для этого достаточно перейти в корень прошивки (в данном случае ~/rom) и распаковать архив с помощью unzip.


Внешний облик

Собственную прошивку чаще всего создают для того, чтобы изменить внешний облик Android по своему вкусу. Проделать эту операцию в Android, опять же, очень просто. Все настройки графического интерфейса Android хранятся в файле framework/framework-res.apk. Его можно распаковать с помощью утилиты apktool:

$ cd ~; wget goo.gl/hxz5l $ tar -xjf apktool1.4.1.tar.bz2 $ cd ~/rom/system/framework $ java -jar ~/apktool.jar d framework-res.apk

В результате в текущем каталоге должен появиться каталог framework-res, содержащий все файлы пакета. Наиболее интересные подкаталоги внутри него - это res/drawable-* и res/layout-*. Первый содержит все графические элементы в виде png-файлов для разных разрешений и положений экрана. Например, drawable-land-mdpi - это каталог с графическими ресурсами для экранов среднего разрешения, находящихся в горизонтальном положении (во время поворота экрана ОС переключается на использование других файлов). Разумеется, любой файл можно отредактировать или заменить другим.


Каталоги layout содержат описания графических элементов в формате XML (на самом деле они хранятся в бинарном формате AXML, но apktool преобразовал их в обычный XML). Формат описания достаточно прост и понятен, но с наскоку с ним разобраться трудно, особенно если не знать, где что находится. Поэтому мы снова обратимся к услугам обитателей форума xda-developers, которые уже успели придумать массу различных модификаций для графического интерфейса Android. Их легко найти с помощью поискового запроса «framework-res mod имя_устройства».

Обычно такие моды распространяются в виде готового файла framework-res.apk, который можно просто положить в свою прошивку. Если же ты хочешь найти конкретные отличия в содержимом, то мод можно распаковать и сравнить с твоим framework-res с помощью diff:

$ diff -R ~/framework-res \ ~/rom/system/framework/framework-res

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

После внесения модификаций можно собрать framework-res.apk с помощью все того же apktool. Однако для этой операции требуется утилита aapt из комплекта Android SDK, которую apktool использует для окончательной упаковки apk-файла. Ее можно получить и отдельно:

$ cd ~/bin; wget goo.gl/tC7k8

Теперь можно собрать файл:

$ cd ~/rom/system/framework $ java -jar ~/apktool.jar b framework-res $ cp framwork-res/dist/framework-res.apk . $ rm -rf framework-res

Следующий этап - это изменение анимации загрузки. Она хранится в виде обычных png-файлов, упакованных в архив system/media/bootanimation.zip. Распакуем его:

$ cd /tmp $ mkdir bootanimation; cd bootanimation $ unzip ~/rom/system/media/bootanimation.zip

Внутри находится файл desc.txt, описывающий анимацию в следующем формате:

Ширина Высота FPS p Порядок Пауза Каталог...

Стандартный вид этого файла:

480 800 30 p 1 0 part0 p 0 0 part1

Это значит, что изображение имеет размер 480 x 800, а скорость смены изображений (FPS) составляет 30 штук/с. Далее идет описание первой части анимации, файлы которой находятся в каталоге part0. Она проигрывается один раз (цифра 1 после p). Следующая часть (part1) проигрывается бесконечное число раз, пока аппарат не загрузится. Обычно каталог part0 содержит изображения, соответствующие первой части анимации, а part0 - все остальные изображения, которые проигрываются в цикле. Сами изображения должны быть одинакового размера, а их названия должны содержать числа в возрастающем порядке, например 0001.png, 0002.png и т. д.

Так как анимация загрузки имеет очень простой формат, ее довольно легко сделать. Достаточно преобразовать видеоролик в png-изображения с помощью mencoder (в desc.txt необходимо выставить значение FPS 24):

$ mplayer -nosound -vo png:z=9 video.avi

Но и это будет лишним. Участники форума xda-developers наделали столько анимаций, что необходимость работы руками отпадает вовсе. Ссылки на интересные анимации приведены в конце статьи.

Низкоуровневые настройки

Последнее, о чем я хотел бы рассказать в статье, - это редактирование низкоуровневых настроек. В Android для этого есть файл system/build.prop, который хранит информацию о сборке прошивки и настройки для конкретных устройств. Добавив в этот файл те или иные строки, можно изменить функционирование Android, ускорить его работу или уменьшить расход батареи. Ниже приведены наиболее интересные настройки.


  1. Запрет выгрузки рабочего стола из памяти: ro.HOME_APP_ADJ=1

    Опция позволяет сделать работу с устройством более удобной за счет мгновенного доступа к рабочему столу в любое время. Не рекомендуется использовать для устройств с малым объемом памяти.

  2. Повышение качества сохраняемых JPG-файлов: ro.media.enc.jpeg.quality=100

    Позволяет сделать снимки камеры более четкими, но существенно повышает нагрузку на ЦП.

  3. Отключение анимации загрузки для ускорения загрузки операционной системы: debug.sf.nobootanimation=1
  4. Возложение части работы по отрисовке интерфейса на GPU: debug.sf.hw=1

    Позволяет сделать интерфейс более быстрым и плавным.

  5. Блокировка извещения об активном режиме отладки (при подключении к компу с помощью USB): persist.adb.notify=0
  6. Устранение проблемы с возникновением черного экрана после завершения звонка: ro.lge.proximity.delay=25 mot.proximity.delay=25
  7. Включение подсветки клавиш управления сразу после включения экрана: ro.mot.buttonlight.timeout=0

Помимо всего этого, многие пользователи также рекомендуют применять следующие комбинации флагов:

  1. Уменьшение времени отклика сенсорного экрана: debug.performance.tuning=1 video.accelerate.hw=1 windowsmgr.max_events_per_sec=150
  2. Увеличение времени жизни батареи: wifi.supplicant_scan_interval=180 pm.sleep_mode=1 ro.ril.disable.power.collapse=0
  3. Твики 3G-модуля: ro.ril.hsxpa=2 ro.ril.gprsclass=10 ro.ril.hep=1 ro.ril.enable.dtm=1 ro.ril.hsdpa.category=10 ro.ril.enable.a53=1 ro.ril.enable.3g.prefix=1 ro.ril.htcmaskw1.bitmask=4294967295 ro.ril.htcmaskw1=14449 ro.ril.hsupa.category=5
  4. Улучшение производительности сети: net.tcp.buffersize.default=4096,87380,256960,4096,16384,256960 net.tcp.buffersize.wifi=4096,87380,256960,4096,16384,256960 net.tcp.buffersize.umts=4096,87380,256960,4096,16384,256960 net.tcp.buffersize.gprs=4096,87380,256960,4096,16384,256960 net.tcp.buffersize.edge=4096,87380,256960,4096,16384,256960

Все эти строки необходимо просто поместить в файл system/build.prop и сохранить.

Сборка

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

$ cd ~/rom; zip -r my-rom.zip *

Теперь необходимо подписать архив, чтобы Recovery смог его установить:

$ wget goo.gl/OyBBk $ java -classpath testsign.jar testsign \ my-rom.zip my-rom-signed.zip

После этого закидываем архив my-rom-signed.zip на карту памяти устройства и выключаем аппарат. Чтобы попасть в Recovery, включаем аппарат с зажатой клавишей уменьшения громкости (для некоторых устройств процедура может отличаться).

Теперь переходим в пункт «Install zip from sdcard», а затем в «Choose zip from sdcard», находим my-rom-sign.zip на SD-карте и выбираем Yes. После завершения установки выбираем «Reboot system now».

Выводы

Android - гибкая платформа, и в этой статье описаны далеко не все возможности по ее модификации. Более глубокая модификация может включать в себя замещение ядра, изменение экрана блокировки и стандартных приложений, активацию таких возможностей, как автоматическая установка приложений на карту памяти, внедрение механизма загрузочных скриптов (/etc/init.d), и многое другое. Обо всем этом мы поговорим в следующих статьях.