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

Доброе время суток хабра-читатель. Данный топик является рассказом о личном опыте владения телефонами на базе Android. Речь пойдёт о плюсах и минусах прошивок и o всём том, что заботит не совсем обычного пользователя современных гаджетов. Данный топик, надеюсь, будет интересен пользователям Android устройств подумывающих о перепрошивке. Опытным пользователям и тем более разработчикам он вряд ли расскажет что-то новое.
У меня нет опыта владения телефонами на WP7 или iOS, и данный холивар в этом топике не затрагивается.
Немного личной истории.
В личном имении были/есть: доисторические телефоны, SE Symbian, Motorola WP6 qwerty, HTC Desire, HTC Desire HD, китайский планшет от Cube U9GT2, Samsung Galaxy Note.
Во время владения телефоном на базе windows phone 6 версией без тачскрина, появившиеся телефоны Android казались просто мега-круть, с невиданными до селе возможностями и наикрутейшим UI. Конечно тогда уже был iOS, но он меня не интересовал и я просто игнорировал данный аппарат. Почему так сложилось? сей факт я сам объяснить не могу. В течении полугода я зрел на покупку android телефона и решающим моментом оказался обзор флагмана HTC — Desire, получившего оценку выше iPhone. Desire тогда продавался с предустановленной Android версией 2.1 (Eclair) и HTC Sense. Данный аппарат был отличной игрушкой на протяжении месяцев 3-4, пока я вошёл во вкус и начал ставить кучи аппликаций, коих на тот момент в маркете было уже полно, на любой вкус и цвет, по крайней мере на мой, не искушённый к тому времени вкус. И тут я упёрся в 100 с небольшим МБ выделенного места под сторонние приложения… По быстрому научился переносить приложения с внутренней памяти на внешнюю и это дало «воздуха» девайсу ещё на полгода.
Но острая нехватка места и эмулированная поддержка мультитача на архаичном AMOLED экране доконала и было решено купить HTC Desire HD (DHD). К этому моменту пришло понимание что большой экран для меня не помеха, а плюс да и выделенного места под приложения в 1гб вполне соответствовало моим требованиям. К тому же DHD к тому моменту продавался с обновлённым HTC Sense и Android 2.2 (Froyo). Я был вполне счастливым обладателем Android телефона с одноядерный процом, послушно ждал и получал обновления, до тех пор, пока «злой» Google не выпустил Android 4.0 (Ice Cream Sandwich).
Как теперь уже стало модным — компания HTC начала кормить завтраками на тему обновлений на ICS для ряда бывших флагманов, но как уже известно владельцам многих смартфонов, данным обещаниям сбыться было не суждено. То их анонсировали, то отменяли, то железо неподходит, то опять подходило… но в конце концов HTC просто отмазались заявлением, что пользователям старой линейки телефонов, будет лучше сидеть на Android 2.3 (Gingerbread), аля хотите замороженный бутер (ICS) будьте любезны купить новый смартфон. Тут, на мой взгляд маркетологи HTC намеренно или нет, но круто подогрели аппетит у миллионов пользователей не получивших обновление. К тому моменту отмена обновлений стало нормой, по этому был велик шанс, что пользователь продукции HTC останется лояльным и купит продукт у той же компании.
Прочитав не мало положительных обзоров на тему улучшений как UI так и look&feel в Android 4.0.x, совсем не хотелось оставаться на старой прошивке. Но и в обновлении телефона я не видел смысла. Решение было очевидным — перепрошить телефон и поставить стороннюю прошивку на базе ICS. Так и было сделано. Но волею случая, появилась возможность выгодно обменять свой уже старенький одноядерный телефон, на новенький Samsung Galaxy Note, который спустя пару дней был также успешно перепрошит.
Краткий обзор метода перепрошивки.
На мой взгляд, наиполнейший ресурс со всевозможными инструкциями и ссылками является XDA-developers, к тому же там удобный форум, с веткой для каждого отдельного устройства. Обычно, перепрошивка Android устройства, сводится к трём шагам:
1. Разблокировать bootloader (S-Off)
2. Установить ClockWorkMod Recovery (CWM)
3. Установить стороннюю прошивку (ROM) + отдельно установить Google Apps (GApps)
Первый шаг нужно сделать единожды. Для каждого бренда нужны разные инструменты.
CWM рекомендуется периодически обновлять, для этого даже есть специальная програмулька ROM Manager.
Прошивки можно менять как перчатки, вы теряете только настройки и СМС (я слышал что у некоторых СМС сохраняются в google аккаунте и восстанавливаются при смене прошивки, но мне для этого приходится ставить сторонние приложения)б это безопасно. Правда есть исключения. По сей причине, настоятельно рекомендую внимательно изучить вопрос первичной перепрошивки своего девайса.
На тему потери гарантии при перепрошивке.
В большинстве случаев, потеря гарантии вам светит только если вы превратите смартфон в кирпич. Т.К. в остальных случаях, можно вернуть оригинальную прошивку и вернуть блокировку bootloader (S-On). Так что в гарантийном сервисе к вам претензий не возникнет.
Справедливости ради отмечу, что большинство «кирпичей» лечится при помощи JTAG коннекторов. Хотя если вы не экстремал/энтузиаст без опыта и следуете инструкции для своего смартфона то проблем быть не должно.
По опыту скажу, что для продукции HTC, на официальном сайте можно разблокировать bootloader, при этом согласившись с ограничениями в гарантии (по сути отказ от гарантии). Естественно это вариант подойдёт только тем у кого телефон и так без гарантии по каким либо причинам.
А samsung, встроили счётчик сбрасывания, который выражается появлением жёлтого треугольника при загрузке, но и это можно обойти.
В Google apps обычно входят Google Play, Google Search и т.д. Отдельным пакетом они ставятся т.к. команды собирающие сторонние прошивки не занимаются развитием и кастомизацией стандартных гугловских приложений. Для каждой версии Android нужен свой набор Гугл приложений.
Сторонние прошивки (ROMs).
Сторонние прошивки обычно делятся на кастомизированные брендовые прошивки и те что собраны из Android исходников.
Кастомизация брендовых прошивок обычно заключается в добавлении рута, удалении лишних пред-установленных бреДновых (брендовых) приложений и добавление или замена ланчера. Конечно, сколько прошивок — столько разных внесённых изменений.

Пара слов о ланчереНа моё удивление об этом многие не знают, что ланчер в Androidе ответственен за отображение десктопа и списка приложений. В качестве примера HTC Sense, Samsung TouchWiz, MotoBlur. Для желающих придраться, отмечу, что это не только кастомные ланчеры, но и фреймворки для целого ряда брендовых приложений. Так вот при установке другого ланчера из того же Play Marketa, даже на оригинальную прошивку, вы к примеру можете поиграться с эмуляцией интерфейса от Windows Phone. Если у вас Android 2.х, можете поиграться с ланчером от ICS Holo
Минусы заключаются в том, что если производитель не обновил версию Androidа в оригинальной прошивке, то и кастомезированных брендовых прошивок с обновлённым Android вы не получите. Ваш КО.
А плюсы таких прошивок заключаются в минусах прошивок из исходников. Основная проблема со собранными из исходников прошивками, в том что у команд собирающих данные прошивки нет исходников драйверов для устройств. Конечно, чисто случайно, прошивки периодически утекают и нужные драйвера попадают в руки разработчиков. Но что делать если для конкретного смартфона под новую версию Android таких драйверов вовсе нет? Разработчики берут драйвера от более новых, но схожих по параметрам моделей смартфонов. Но подходит то не всё… Распространённые проблемы прошивок из исходников:
— Не работает радио;
— Не работает NFC;
— Не работает MTP;
— Не работает / глючит камера;
— Не работает / глючит Wifi, Wifi точка (hotspot);
— Не работает / глючит Bluetooth.
Естественно весь букет вы увидите лишь в самых ранних версиях прошивок, обычно они отмечены как beta или Nightly, к тому же это всё относится в основном для версий Android собранных из исходников и под которую нет драйверов от производителя. Что бы не быть голословным приведу пример: HTC Desire, последняя оригинальная прошивка на Android 2.2.x, и если ставить прошивку из исходников Jelly Beans (Android 4.1.1) то большинство перечисленных выше проблем вылезут, об это чётко сказано, например .
Так же вы теряете весь набор брендовых приложений, как бесполезных так и полезных, т.к. все они основаны на брендовом фреймворке. Например, если в случае перепрошивки HTC Desire HD, я этого не заметил, то при перепрошивке Galaxy Note, я потерял почти весь функционал работы со стилусом, а также брендовую камеру от samsung, которая, на мой взгляд (сравнение в инете не нашёл), делает более качественные фотографии, как и клавиатуру предназначенную для большого экрана.
Плюсы прошивок из исходников заключаются в бОльшем наборе настроек. Перечислять все не вижу смысла, ибо их море. О некоторых, на приере CyanogenMod, можно прочитать .
А так же возможности решить проблемы, такие как у HTC Desire с доступным местом для приложений, с помощью форматирования, изменения партиций сд карты и установкой a2sd приложения или сторонней прошивки которая поддерживает данное решение.
Краткое сравнение оригинальной прошивки Galaxy Note на TouchWiz Android 4.0.4 и CyanogenMod10 Nightly на Android 4.1.1:
Изначально touchwiz для Galaxy Note был надстройкой над Android 2.3, собственно после обновления до ICS, touchwiz не изменился, весь look&feel остался от Android 2.3. (нафига менял телефон?)

На картинке Galaxy S2, но суть та же:

Большинство виджетов из маркета будут не на весь экран, т.к. у Galaxy Note экран аж 5.3″ и на нём 5 колонок и 6 строк для иконок, а все виджеты рассчитаны на 4 колонки и 5 строк. А растягивать то нет возможности. Например гугл поиск:

Куча предустановленных бесполезных приложений, которые я не могу удалить.
Отсутствие рута, а следовательно и бОльших возможностей. Отмечу что рута можно получить на touchwiz и не прибегая к перепрошивке, но толку от него мало, т.к. на системном разделе памяти практически нет и поставить нужную тулзу возможностей тоже нет. (некоторые рут приложения, ставятся в раздел /system)
Всех этих недостатков CM10 лишён, но и недостатки имеются:
— нет полной аппаратной поддержки, например MTP
— всё же это Nightly версия, пока ещё не очень стабильная и периодически глючит
— отсутствие поддержки стилуса. Конечно в маркете есть приложения для стилуса, но нет поддержки на уровне ОС
— камера в touchwiz более функциональная и качество снимков выше
Часть проблем можно решить откатом на стабильную версию CM 9.1. Но к новым плюшкам быстро привыкаешь и этого делать совсем не хочется, вместо этого каждую неделю обновляю CM10 из свежих сборок.
Как вариант жду обновления TouchWiz для Galaxy Note, но это случится только после начала продаж Galaxy Note 2. Во первых это даст разработчикам обновлённые драйвера для Jeally Beans версии, во вторых обновлённый look&feel вполне может устроить и не понадобятся перепрошивки. Разумеется всё это справедливо если это обновление вообще случится… Ведь Galaxy Note даже по сегодняшним меркам весьма производительный смартфон, и единственное, что может подтолкнуть неискушённого до новинок пользователя это как раз новый look&feel в обновлённом Galaxy Note 2. Выпустив обновления для предыдущей линейки, samsung рискует потерять часть потенциальных покупателей. В сегодняшней гонке производительности смартфонов, флагманы сменяются каждый квартал, и обновления до последних прошивок становится влияющим фактором при решении покупки нового смартфона.
P.S. В последних прошивках CyanogenMod 10 Nightly, было добавлено авто-обновление, периодичность обновлений можно настроить. Спасибо zoxa за инфо.
Буду рад ответить на возникшие вопросы.
Неточности и очепятки прошу в личку.
P.P.S. Появились вопросы в Q&A, добавил сюда, вдруг кому пригодится.1. Есть ли на данный момент актуальные, стабильные и 100% работоспособные сборки с Sense, которые не нужно дорабатывать напильником (доустанавливать диалер и т.п.)?
2. Насколько уменьшится объем внутренней памяти? Сейчас с официальной прошивкой я совсем не забочусь о внутреннем объеме, занято чуть больше половины.
3. Есть ли возможность восстановить состояние аппарата до установки?
4. Есть ли какие-то нормальные инструкции, предназначенные для людей, которые не выполняли эту процедуру 1000 и один раз, и не собираются всю жизнь этим заниматься? Нахожу только какие-то обрывки каждого из этапов (получение рута и т.д.).
5. Можно ли после выполнения процедуры отключить root, как было на официальной прошивке?
6. Как обстоят дела с батареей на ICS?
7. Какова вероятность сделать из устройства кирпич? Есть ли способы восстановления работоспособности в случае неудачи?
Мой ответ:
1. К сожалению с SENSE ромы я не пробовал, т.к. по большей части из за SENSE и решил перепрошить. Сенс тяжёлый, медленный, занимает тучу места на экране (в списке приложений 2-3 шапки… зачем???) и место в памяти. В целом — я бы не рекомендовал такие прошивки. UI ICS куда приятней. По этому рекомендую CyanogenMod9, у меня с ним проблем не было, работает заметно быстрее Сенс, стабильный.
2. На сколько я помню — ни как. Место под систему и под апликации это разные партиции. Даже если для DHD это не так (уже не помню) в любом случае CM9 да и все AOKP ромы весят меньше оригинальных. Например для Galaxy Note оригинальная весит около 800мб, а CM10 240мб.
3. Без проблем, только зачем?!
4. Считаю, в целом, это необходимым злом, т.к. в процессе поиска узнаешь много полезного, дабы не превратить телефон в кирпич. Сам курю в большинстве своём анг. мануалы.
1й шаг S-Off;
2й инстал ClockWorkMod Reckovery
3й Root
4й CM9 ром + Google APPs
Варианты:
1) 1-3 шаг тут: androidforums.com/desire-all-things-root/439627-guide-s-off-root-htc-desire-revolutionary-windows-published-4th-november-2011-a.html
2) 1-4: forum.xda-developers.com/showthread.php?t=1528925
Я делал по первому варианту, 4й шаг по второму.
5. Можно. Достаточно удалить аппликацию ответственную за раздачу рута другим апликациям.
6. Зависит от прошивки. Если нет глюков то всё хорошо, уж точно не меньше чем на оригинальной. А вообще попробуйте специальные программы типа (Juice defender).
7. Вероятность варьируется от телефона к телефону (разные модели). И в большинстве случаев, чем старше телефон, тем шансов кирпича меньше. Кирпич — (в основном) результат некорректной перепрошивки, то есть, в 95% зависит лишь от вас самих. Именно по этой причине лазить и искать инструкции в целом полезно. Да и безвозвратных кирпичей почти не бывает… вопрос лишь в там, на сколько геморно и дорого выйдет вам покупка спец коннекторов типа (jtag).
П.С.
1. Если где-то в инструкциях были варианты линухи или винда, я шёл по пути линуха.
2. После шагов 1-3, можете перепрошивать сколько влезет, только обращайте внимание на то, что разные типы прошивок (основанные на сенс ил aokp) требуют разных кернел.

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

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

Подготовка

Для компиляции ядер я использую или Linux (UBUNTU) или Windows Bash UBUNTU под Windows 10.

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

Компиляция

Компиляция ядер происходит в 2 этапа + сборка DTB + сборка ядра для прошивки:

  1. Компиляция конфигурации будущего ядра
  2. Компиляция самого ядра + возможно библиотеки уровня ядра (для MTK я этого не видел, только для MSM и другого процессора)
  3. Дополнительно собирается DTB файл конфигурации устройств, если настройка конфигурации ядра этого требует
  4. Дополнительно необходимо собрать boot.img

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

export ARCH=arm
export CROSS_COMPILE=prebuilts/gcc/linux-x86/arm/arm-eabi-4.8/bin/arm-eabi-
export TARGET=out

export означает то, что переменная будет доступна для всех запущенных программ и будет храниться в глобальном списке переменных (окружения bash).
ARCH- тип архитектуры процессора под который будет компилироваться ядро
CROSS_COMPILE — указывает путь, где компилятор будет искать программы компиляции и сборки ядра.
TARGET — папка, куда компилятор будет складывать все свои файлы.

Далее компилируем конфигурационный файл, итогом компиляции будет файл $TARGET/.config

make O=$TARGET ARCH=$ARCH CROSS_COMPILE=$CROSS_COMPILE X5PRO_6735m_defconfig

make — стандартная программа для сборки программ по сценариям
O=$TARGET — папка, куда буду складываться все скомпилированные файлы и конфигурации, ее надо указать потому что многие модули ядра используют ее для своих целей, берется из глобальной переменной установленной в примере выше
ARCH=$ARCH — тип архитектуры процессора, обычно arm или arm64, в примере берется из глобальной переменной установленной выше.
CROSS_COMPILE= — путь к компилятору, мы задали глобальную переменную в примере выше
5PRO_6735m_defconfig — название конфигурационного файла для компиляции ядра вашего телефона, находится по пути arch/$ARCH/configs/ и зависит от типа выбранной конфигурации процессора, мы задали ее в глобальной переменной $ARCH

Далее начинаем компиляцию самого ядра

make O=$TARGET ARCH=$ARCH CROSS_COMPILE=$CROSS_COMPILE -j4

Т.е. такая же команда как и выше но без указания конфигурационного файла.
-j4 — это параметр говорит, сколько процессоров (процессов компиляции) использовать при работе. У меня в компьютере 4 физических процессора, и я использую цифру 4, если у вас в компьютере 8 процессов, то используйте цифру 8! Но чем больше цифра, тем больше используется памяти. Если у вас слабый компьютер, то используйте меньшее число.

По окончании компиляции, у меня он длится около 10 минут, в зависимости от версии ядра и процессора получится несколько файлов — частей будущего файла boot.img или recovery.img и размещаются в папке $TARGET/arch/$ARCH/boot и называются по разному в зависимости от архитектуры и процессора:

  • Image.gz — упакованное в архив ядро, при запуске телефона ядро распаковывается в оперативную память и запускается, файл DTB располагается отдельно
  • Image — не упакованное ядро, файл DTB располагается отдельно
  • Image.gz-dtb — упакованное в архив ядро с встроенным файлом DTB для ARM64
  • zImage-dtb — упакованное в архив ядро с встроенным файлом DTB для ARM

Для компиляции файла DTB (DTB — двоичный файл с описанием настроек всего оборудования телефона, DTS — текстовой формат файла DTB) для Qualcomm я дополнительно запускаю команду

dtbToolCM -2 -o $TARGET/arch/$ARCH/boot/dtb -s 2048 -p $TARGET/scripts/dtc/ $TARGET/arch/$ARCH/boot/dts/

Создается готовый для вставки в ядро файл dtb из скомпилированных раздельно файлов DTB находящихся в $TARGET/arch/$ARCH/boot/dts/

Для поиска и копирования всех возможно скомпилированных модулей для Qualcomm я использую команду которая ищет файлы по шаблону и копирует в одну папку.

find «$TARGET/» -name *.ko -exec cp {} «modules/» \;

Примеры

Компиляция ядра под процессор MTK для телефона DOOGEE X5PRO

Иходник ядра для DOOGEE X5PRO найдете .
Лучше забирать через команду git clone https://github.com/SnowCat6/DOOGEE-kernel-3.18.git тогда вы сможете всегда обновлять до самой свежей версии командой git pull

Компиляция ядра под процессор Qualcomm для телефона Archos 50 Diamond

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

Создание прошивки для Android

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

Читайте также: Как восстановить прошивку на Android

Шаг 1: Установка Recovery

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

Подробнее: Как установить рекавери на Android

Шаг 2: Выбор прошивки

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

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

Шаг 3: Подготовка системы на ПК

Специальное ПО для компьютера, о котором пойдет речь в следующем разделе, в равной степени совместимо с ОС Windows, Linux и MacOS. Наиболее удобный метод сводится к использованию систем на основе Linux, в то время как на Виндовс потребуется ряд дополнительных действий и программ. В связи с куда большей распространенностью второго варианта, именно ОС Windows мы уделим внимание.

  1. Посетите официальный сайт Oracle и загрузите программное обеспечение JDK в соответствии с разрядностью вашей операционной системы.

    Кликните по загруженному EXE-файлу и произведите инсталляцию программы.

  2. Следом за JDK нужно скачать и установить Cygwin. Для этого посетите тему на форуме 4PDA по представленной ниже ссылке.
  3. Откройте загруженный архив при помощи любого удобного архиватора и извлеките имеющиеся файлы.
  4. Среди полученных файлов дважды кликните по «Setup», чтобы начать установку.
  5. На этапе «Choose A Download Source» выберите вариант «Install from Local Directory» и нажмите «Далее».
  6. В строке «Root Directory» путь оставьте без изменений, воспользовавшись кнопкой «Далее».
  7. Дальше нужно изменить «Local Package Directory», указав папку Cygwin, которую вы извлекли из архива ранее. К примеру, в нашей ситуации она находится на рабочем столе, и потому путь выглядит так, как показано на скриншоте.
  8. Последним шагом является выбор компонентов в окне «Select Packages», которое появится практически сразу после начала установки. Кликните по строке «All», чтобы рядом с каждым пунктом появилась подпись «Install».

    Дальнейшие действия по установке Cygwin производятся в автоматическом режиме.

    По желанию можете создать на рабочем столе ярлык для более удобного запуска программы.

  9. Запустите программу с помощью созданного значка. В ОС Windows выше семерки используйте «Запуск от имени администратора».

    Дождитесь завершения создания директорий и файлов в консоли, после чего закройте Cygwin.

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

Шаг 4: Использование Android Kitchen

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

  1. Загрузив «кухню» на компьютер, извлеките папку из архива так же, как и на прошлом этапе.
  2. Переименуйте папку в «kitchen» и с помощью комбинации клавиш «CTRL+X» подготовьте к переносу.
  3. Откройте «Локальный диск (C:)» и откройте папку по следующему пути: Cygwin/home/user. Нажмите сочетание клавиш «CTRL+V», чтобы добавить ранее извлеченную папку.

    Примечание: Вместо «user» папка будет названа в соответствии с именем пользовательской директории в системе.

  4. Переместите заранее скачанный файл прошивки, подходящей для вашего устройства, в папку «original_update». Эта директория расположена по следующему пути: Cygwin/home/user/kitchen/original_update.
  5. Вновь запустите Cygwin и последовательно воспользуйтесь следующими командами:

    cd kitchen
    ./menu

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

Закройте «кухню» и переходите к следующему этапу.

Шаг 5: Сборка прошивки

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

  1. В главном меню Android Kitchen введите «0» и нажмите «Enter», чтобы перейти к расширенному списку параметров.

    Отсюда можно внести множество изменений в прошивку, будь то добавление ROOT, изменение анимации или запуск плагинов.

  2. Для завершения нужно будет ввести «99» и нажать «Enter». Готовый файл будет находиться в папке «OUTPUT_ZIP» в пользовательской директории Cygwin.

Завершив процедуру редактирования, можно приступать к прошивке устройства.

Шаг 6: Установка прошивки

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

Подробнее:
Как установить кастомную прошивку на Android
Инструкции по перепрошивке смартфонов

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

Мы рады, что смогли помочь Вам в решении проблемы.
Добавьте сайт Lumpics.ru в закладки и мы еще пригодимся вам.
Отблагодарите автора, поделитесь статьей в социальных сетях.
Опишите, что у вас не получилось. Наши специалисты постараются ответить максимально быстро.

Помогла ли вам эта статья?