Сборка своей прошивки. Как сделать самостоятельно прошивку на Андроид: подробная инструкция. Распаковка и анализ оригинального файла

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

Распаковка и анализ оригинального файла

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

Редактирование на устройстве

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

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

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

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

Прошиваем, используя ZIP архив

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

Итак, перейдем непосредственно к описанию загрузки данного типа устройств. Практически каждый ARM процессор имеет встроенную на чип flash-память, в которую помещается т.н. загрузчик. В случае отсутствия на чипе такой памяти, или неиспользования ее в качестве пространства для размещения загрузчика, чип обычно обращается для запуска этого загрузчика к NOR-flash по строго определенному адресу.

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

Другие полезные инструменты

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

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

Теперь опишем, что же обычно делает загрузчик после его запуска. Довольно прямая аналогия может быть проведена с BIOS компьютеров на базе процессоров х86 (те с основной массой персоналок). Загрузчик ARM при запуске точно так же выполняет рад низкоуровневых инициализаций аппаратной части устройства (оперативная память, хранилища данных, сетевой адаптер и т.д. и т.п.). После инициализации последовательного порта (обычно в формате RS232, но с уровнями 3.2 вольт) появляется возможность работы с ним через консоль инициализированной на этом порту.

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

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

Выглядит это так

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

Если Один застрянет во время процесса

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

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






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

Сделаем небольшое отступление. Кроме NOR-flash для размещения загрузчика, в ряде случаев, может быть использован NAND-flash или даже SD-card. Кроме того, возможно использование комбинаций этих типов флеш памяти в устройстве. Например загрузчик может быть размещен в NOR, а в качестве внутреннего накопителя (для размещения OS) NAND или SD и т.п.

Итак, мы включили железку. Она загрузила загрузчик. Загрузчик проинициализировал оборудование. По окончанию этой инициализации загрузчик выполняет следующую процедуру:

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

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

1 - считывание и размещение в оперативной памяти образа ядра и рамдиска - оба по строго определенным адресам (может быть настроено в командной строке u-boot).

2 - запуск ядра с правильной точки входа, с указанием ему, где брать внешний рамдиск (initrd) с корневой файловой системой и что использовать в качестве init.

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

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

Процесс занимает в среднем 30 минут в зависимости от модели смартфона. Восстановление созданного резервной копии. Перейдите в раздел «Управление и восстановление резервных копий». Приложение отобразит экран с просьбой выбрать файл резервной копии, который вы хотите восстановить. Найдите резервную копию, сгенерированную на шаге 4, и запустите восстановление.

Дальнейшая загрузка мало отличается от загрузки Linux на обычном компьютере. Загрузившись, ядро выполняет указанный ему init (это просто еще одна программа). Настройка init осуществляется в файле init.rc, который расположен в рамдиске. В нем производится настройка переменных среды, монтирование дисковых устройств, запуск необходимых служб и т.д и т.п. По окончанию выполнения инструкций предзапуска из init.rc запускается собственно сам андроид. Вид запуска андроида обусловен параметром запуска ядра androidboot. Стандартный запуск андроид выполняется в целом посредством передачи параметров использования нужного рамдиска (в ramdisk.img) и параметра androidboot.normal. Для запуска режима восстановления, как правило, используется другой рамдиск, содержащий программу recovery (в recovery.img) и параметр ядра androidboot.recovery.

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

В меню параметров режима восстановления перейдите к опции «Резервное копирование и восстановление». Выберите «Резервное копирование», и процесс начнется немедленно, не допуская определения имени для файла. В конце процесса телефон не перезапустится автоматически.

Как вариация ядра Linux для андроида могут быть собраны не с поддержкой initrd (корневая система на рамдиске), а с т.н. initramfs. В этом случае вся корневая файловая система будет расположена просто внутри ядра. В этом случае для режима восстановления нужно, как правило, второе ядро с корневой файловой системой содержащей программу recovery. И настройка загрузчика просто на загрузку и выполнение recovery ядра.

Чтобы восстановить резервную копию, включите телефон в режиме восстановления, перейдите к опции «Резервное копирование и восстановление» и выберите опцию «Восстановить». Выберите файл, который вы хотите восстановить и подтвердите. Выберите параметр «Восстановить» для восстановления ранее созданной резервной копии.

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

И как итог, простая схема:

Запуск процессора -> запуск загрузчика -> инициализация железа -> считывание из нанда ядра и рамдиска -> запуск ядра с использованием этого рамдиска -> выполнение программы init -> запуск собственно android.

Подробно о u-boot и его командах можно прочитать например на этом вики _http://www.denx.de/wiki/view/DULG/Manual.

Если вам мало этой информации, то подробнее про параметры запуска ядра Linux можно прочитать в Documentation/kernel-parameters.txt из архива его исходных кодов. Или найти этот файл в интернете для нужной вам версии ядра. Но не забывайте учитывать упомянутую выше специфику Android.

Неправильные представления, сделанные во время установки, могут превратить ваш новый смартфон в красивую бумагу. Чтобы обнаружить что-то подобное, требуется много исследований, экспериментов и много попыток с ошибками и правильностью. Но каковы преимущества?

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

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

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

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

Любую прошивку можно доработать под определенного пользователя

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

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

Зарядите аккумулятор и сделайте скриншоты в последнюю минуту

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

Сборка из исходников

Один из самых правильных способов является использование исходного кода, публикуемого командами разработчиков Google или Cyanogenmod. Но одновременно этот способ самый сложный, ведь для того, чтобы собрать прошивку Android из исходников, оптимизировать её и заставить работать на конкретном устройстве, нужно обладать довольно глубокими навыками программирования, разбираться во всех тонкостях работы мобильной операционной системы и железа устройства. Эти знания не приобретаются за день, поэтому в этой статье мы не будем подробно описывать этот способ.

Очистите кеш и выполните сброс настроек

Само обновление не сбрасывает ваше устройство, но некоторые вещи могут измениться и многое на главном экране.


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


Изменение уже готового файла

Если вы не слишком разбираетесь во всех тонкостях работы ОС, но хотите что-то изменить в своей прошивке, лучшим решением будет подправить уже . Можно изменить как родную, встроенную прошивку, так и уже изменённую кем-то другим. Кастомизированных прошивок в интернете очень много, и вы вряд ли будете испытывать недостаток в их количестве. Итак, представляем пошаговую инструкцию по сборке собственной прошивки на основе уже существующего продукта.




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

Были ли у вас проблемы после обновления? Что вы делаете, чтобы избежать возможных проблем? Таким образом, обновление и повторная публикация этого вопроса со временем станут необходимыми. Однако не забудьте регулярно хранить свои персональные данные. Не манипулируйте, если вы не понимаете, что делаете. Откроется окно, выберите прошивку. Снеговик проверяет файл.

Редактирование с помощью компьютера

Необходимое программное обеспечение

Нам понадобится компьютер, устройство, файл прошивки и специальная программа под названием Android Kitchen (известная также как кухня). Файл прошивки можно найти на специализированных форумах, наиболее известные - англоязычный XDA Developers и русскоязычный 4PDA. В разделе вашей модели устройства можно найти ссылки на самые популярные и проверенные прошивки как официальные стоковые, так и неофициальные пользовательские.

Далее нужно установить кухню на свой компьютер. Лучше всего работать под Linux, но необходимые библиотеки можно поставить и в Windows. В этом случае можно выйти из ситуации установив Cygwin. и следуйте пошаговой инструкции, помещённой в архиве. Перед этим потребуется установить также Java Platform (JDK) с официального сайта (http://www.oracle.com/technetwork/java/javase/downloads/index.html для Windows) или же в Центре приложений Ubuntu найти и скачать OpenJDK Java 6 Runtime либо похожее (для Linux). Второй вариант использования - установить Linux на виртуальную машину и управлять процессом через неё.


Модификация прошивки

Прошивки чаще всего распространяются в виде файла с расширением.img, реже - как ZIP-архив. В обоих случаях вам понадобится с прошивкой в папку установленной кухни, чтобы она смогла импортировать её и начать с ней работу. Кухня должна быть установлена по пути c:/cygwin/home/user/ (при установке через Cygwin) или Файловая система/home/user/ (при работе через Linux).


  1. Запустите кухню через Cygwin или Linux-терминал с помощью команды cd kitchen, затем./menu.
  2. Распакуйте архив в кухню, как уже писалось выше.
  3. После того как появится меню программы, перейдите в раздел 0. Advanced Options.
  4. После этого будет представлен список команд для модификации прошивки. Выберите именно ту, которая нужна вам. Можно добавить Busy Box, Root, Apps2SD, заменить стоковые приложения, различные анимации, освободить память устройства и многое другое.
  5. После окончания манипуляций запустите в главном команду 99. Build ROM from working folder (Построить прошивку с рабочей папки) и заберите ZIP-архив с OUTPUT_ZIP.


Прошивка устройства

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


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


Редактирование на устройстве

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


Изменение собственной прошивки

  1. Если на устройстве ещё не получен root, получите его. Как это сделать, можно прочесть на специализированных форумах в разделе, посвящённом именно вашему аппарату. Дело в том, что поддерживаются малым количеством устройств и большинство из них имеют индивидуальную процедуру.
  2. Установите Nandroid backup (https://play.google.com/store/apps/details?id=com.h3r3t1c.onnandbup&hl=ru) и сделайте с его помощью резервную копию системы своего девайса. Сохраните её в надёжном месте, например, в облачном хранилище. Для чего создавать копию? Вдруг что-то пойдёт не так или вы нечаянно удалите что-то нужное - будет возможность вернуть всё как было.


  1. Установите файловый менеджер, работающий с системным разделом, чтобы удалить ненужный софт и добавить свои приложения. Золотым стандартом является Titanium Backup.
  2. Выберите приложения, которые вы хотите удалить, и удалите их через файловый менеджер.
  3. Установите приложения, которыми вы хотите заменить удалённые, и через Titanium Backup сделайте их системными.
  4. Перезагрузите устройство и наслаждайтесь своими успехами.


Изменение сторонней прошивки в ZIP-архиве

  1. Скачайте интересующий вас файл прошивки в формате.zip.
  2. Установите файловый менеджер, умеющий работать с архивами, например, ES Проводник или Total Commander, и распакуйте содержимое архива.
  3. Удалите лишние или добавьте недостающие приложения, после чего запакуйте архив обратно и переместите в корень флеш-карты.
  4. С помощью Nandroid backup (https://play.google.com/store/apps/details?id=com.h3r3t1c.onnandbup&hl=ru) создайте резервную копию системы и скопируйте её на облачный диск.
  5. Прошейте устройство из режима Recovery.


Заключение

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

Собирали ли вы прошивку для Android самостоятельно? Что вы в ней меняли и каким образом это делали? Будет интересно, если вы поделитесь своими отзывами.