Как сделать кастомную прошивку для android
Данная программа не является полноценным инструментом для работы с прошивками. Создание кастома обычно начинается с нуля, требует много времени и терпения. Автор программы просто дал возможность пользователю быстрее добиться своей цели, используя уже существующую базу, а инструкция поможет вам быстрее научится работать с программой. Материал предоставленный в данном посте является неофициальным. В случае гибели аппарата: создатель программы, автор поста и администрация сайта ответственности не несут. Все действия на ваш страх и риск.
Список поддерживаемых кухней аппаратов:
- Acer Liquid
- Dell Streak 7
- HTC Aria / Liberty
- HTC Desire
- HTC Desire HD / Inspire 4G
- HTC Desire S
- HTC Desire Z / Vision / T-Mobile G2
- HTC Dream / G1
- HTC Droid Eri
- HTC Evo 3D
- HTC Evo 4G
- HTC Evo View 4G (не протестировано)
- HTC Evo Shift 4G
- HTC Flyer (не протестировано)
- HTC HD2 — Детали в этой теме
- HTC Hero / G2 Touch
- HTC Incredible
- HTC Incredible 2
- HTC Incredible S
- HTC Legend
- HTC Magic / myTouch 3G
- HTC myTouch 3G Slide
- HTC myTouch 4G / Glacier
- HTC Nexus One
- HTC Rezound
- HTC Sensation
- HTC Tattoo / Click
- HTC Thunderbolt
- HTC Wildfire / Buzz
- HTC Wildfire S (не протестировано)
- Huawei Ideos X6 — Детали в этой теме
- Huawei U8100/U8110/U8120/U8150/U8160/U8180/U8650
- Huawei U8220 / T-Mobile Pulse
- Huawei U8500
- Huawei u8850
- LG Ally
- LG GT540 Optimus
- LG Optimus 2X (P990)
- LG Optimus Black (не подтверждено)
- LG Optimus G2X (P999)
- LG P500 — Детали в этой теме
- LG Shine Plu
- LG Vortex
- Micromax A60
- Motorola Atrix (не подтверждено)
- Motorola CLIQ / CLIQ XT
- Motorola Droid
- Motorola Droid Bionic — Детали в этой теме
- Motorola Milestone (не подтверждено) — Возможно потребуется удаление boot.img после сборки
- Samsung Galaxy Nexus (не протестировано, только версии ‘maguro’ и ‘toro’)
- Samsung Galaxy S (GT-I9000 и все его варианты) — Детали в этой теме
- Samsung Galaxy S Plus (GT-I9001) — Детали в этой теме
- Samsung GT-S7500 Galaxy Ace Plus -Детали в этой теме
- Samsung Galaxy S2 (GT-I9100 и Exynos CPU варианты) — Детали в этой теме
- Samsung Galaxy S2 LTE (AT&T Skyrocket, T-Mobile SGH-T989) — Детали в этой теме
- Samsung Galaxy W (GT-I8150, не протестировано)
- Samsung Nexus S / Nexus S 4G
- Samsung Galaxy Gio — Детали в этой теме
- Sony Xperia X10 / X10 Mini / X10 Mini Pro — Детали в этой теме
- Sony вся линейка телефонов ’11 года, могут быть пробелы в updater-script
- ZTE Blade / Orange San Francisco
Установка:
Windows:
- Установить Cygwin (Unix-среда для Windows):
1. Скачиваем и устанавливаем Java JDK для Windows 32-бит (ВНИМАНИЕ: Не устанавливайте Cygwin перед JDK).
2. Скачиваем cygwin, распаковываем и следуем инструкциям в «Установка.txt»(спаибо за Cygwin пользователю Jlocb).
Примечание: кухня работает только с той версией Cygwin, что прилагается здесь. - Установка Linux через виртуальную машину:
1. Загружаем и устанавливаем Virtual Box (или любую другую виртуальную машину).
2. Устанавливаем Linux в виртуальную машину.
3. Подробнее об подготовке Linux читаем в разделе «Установка — > Linux».
Примечание: при использовании данного метода, кухня может работать медленнее.
Linux (рекомендую Ubuntu):
1. Устанавливаем «Центр приложений Ubuntu», набрав в терминале «sudo apt-get install software-center» (в последних версиях, уже встроен в дистрибутив).
2. Для 64-битных систем набираем в терминале «sudo apt-get install ia32-libs«.
3. Запускаем центр приложений (можно через терминал командой «software-center«) и в окно поиска вводим «Java», среди найденных результатов ищем «OpenJDK Java 6 Runtime» (или что-то подобное) и устанавливаем.
4. Тем, кто ставил через виртуальную машину, нужно ещё расшарить папки между Windows и Linux.
Mac OS X:
1. Создаём образ .dmg диска для кухни, иначе готовый диск не будет загружаться.
2. Устанавливаем Sun Java JDK.
3. Устанавливаем GNU версии sed, Mac OS X версии (FreeBSD) в sed не совместим с кухней.
4. Устанавливаем GCC (компилятор), если у вас нет по умолчанию. Просто введите «GCC» для проверки, он входит в пакет XcodeTools на установочном DVD.
5. Устанавливаем wget.
Примечание: всех тонкостей работы на Mac OS X я не знаю, поэтому данный метод эксперементальный.
Более точная инструкция Создание кастомных прошивок (Пост #21050611)
Запуск:
1. Перед запуском нам нужно папку из архива с кухней разархивировать по пути «c:/cygwin/home/John/» для Cygwin или по пути «файловая система/home/John/» для Linux, где John — имя пользователя, и переименовать в «kitchen».
2. Запускать нужно через Cygwin или терминал командами «cd kitchen«, затем «./menu«(если вы работаете под Windows 7, то cygwin нужно запускать от имени администратор).
Примечание 1: если меняете путь, то и первая команда будет меняться на «cd ../kitchen«, где вместо точек будет путь к кухне.
Например: у меня кухня находится «файловая система/home/kelt525/papka/kitchen», то команда будет выглядеть так «cd /home/kelt525/papka/kitchen».
Примечание 2: для корректной работы кухни, имя пользователя должно быть на английском языке, т.е. для Cygwin создаём отдельный профиль с английским именем.
Импортирование ROM:
Для импортирования ROM в кухню, нужно закинуть его в папку «original_update folder».
Кухней поддерживаются несколько вариантов:
1. «.zip» фаил прошивки.
2. «system.img», «boot.img» и остальные.
3. «.exe» фаил прошивки.
Примечание: ROM принято брать из стоковых и кастомных прошивок, исходя из того, какую нужно взять систему за основу.
Работа с кухней:
После того, как мы импортировали ROM приступаем к работе с куней, запускаем её, как я описывал её в разделе «Запуск» под номером два.
Если вы до этого всё сделали правильно, то должно появится меню:
1. Set up working folder from ROM
2. Add root permissions
3. Add BusyBox
4. Disable boot screen sounds
5. Add wireless tethering
6. Zipalign all *.apk files to optimize RAM usage
7. Change wipe status of ROM
8. Change name of ROM
9. Check update-script for errors
10. Show working folder information
0. Advanced Options
99. Build ROM from working folder
00. About/Update kitchen
0. Exit
Где заходя в «0 — ADVANCED OPTIONS» видим:
11 — Deodex files in your ROM
12 — Add task killer tweak for speed (stock ROM only)
13 — Add /data/app functionality
14 — Add Nano text editor + sysro/sysrw
15 — Add Bash (command shell)
16 — Add Apps2SD
17 — Add /etc/init.d scripts support (busybox run-parts)
18 — Add custom boot animation functionality
19 — Porting tools (experimental)
20 — Tools for boot image (unpack/re-pack/etc.)
21 — Unpack data.img
22 — Sign APK or ZIP file(s)
23 — Convert update-script or updater-script
24 — Miscellaneous optins / Plugin scripts
0 — Back to main menu
Вот перевод всех функций:
1. Создать рабочую папку из ROM’а
2. Добавить root права
3. Добавить BusyBox
4. Отключить экран загрузки звуков
5. Добавить фунцию создания Wi-Fi роутера из телефона
6. Zipalign все «.apk» фаилы, проще говоря сжать
7. Сменить wipe статус ROM
8. Сменить название версии ROM
9. Проверить update-scrypt на наличие ошибок
10. Посмотреть информацию рабочей папки
0. Дополнительные функции
99. Собрать ROM из рабочей папки
00. О кухне/обновить
0. Выход
11 — Сделать DeOdex системы
12 — Добавить убийцу задач для повышения скорости (только для стоковых прошивок)
13 — Добавить функциональную папку «/data/app»
14 — Добавить текстовый редактор Nano + sysro/sysrw
15 — Добавить Bash (командная строка)
16 — Добавить Apps2SD
17 — Добавить поддержку скриптов «/etc/init.d» (необходим busybox)
18 — Добавить анимацию загрузки
19 — Инструменты для портирования (эксперементально)
20 — Инструменты для ядра (распаковка/перепаковка/и.т.д.)
21 — Распаковка data.img
22 — Подписать «.apk» или «.zip» файлы
23 — Конвертировать update-script в updater-script
24 — Запуск сценариев/плагинов
0 — Вернуться в главное меню
Пример работы в кухне:
1. Импортируем ROM
2. Запускаем кухню
3. Создаём рабочую папку из ROM’а
4. Добавляем root и BusyBox
5. Делаем DeOdex
6. Удаляем/добавляем/модифицируем что нужно
7. Собираем ROM из рабочей папки
Примечание: после сборки получаем готовый к прошивке через рекавери «.zip» фаил в папке «OUTPUT_ZIP»
Замена ядра:
- Если кернел, который вы хотите использовать закрыт в «.img» файле (т.е. «boot.img»), то делайте следующее:
1. Переименуйте его в «boot.img».
2. Замените с текущим «boot.img», который находится в вашей кухне.
3. Так же заменяем модули (если есть). - Если вы хотите «пересадить» кернел из одного «boot.img» в ваш существующий «boot.img»:
1. В «Advanced options», выберите опцию ”unpack boot.img” из ”any folder” (любая папка).
2. Поместите новый boot.img внутрь этой папки, то есть вы можете извлечь кернел (zImage).
3. Затем выберите опцию ”unpack a boot.img from your working folder”. Это создаст папку «BOOT-EXTRACTED».
4. Скопируйте zImage (из нового boot.img) в папку «BOOT-EXTRACTED».
5. Выберите опцию «Re-pack the boot.img».
6. Ваш «boot.img» в рабочем фолдере получил новый кернел.
7. Пользуйтесь предыдущим описанием, если Вам нужно также скопировать модульные файлы, если они включены в «упаковку». - Если новый кернел сам по себе и не находится в «boot.img» (т.е. zImage или boot.img кернел), далее описание, как добавить в рабочий фолдер в кухню:
1. В меню «Advanced options» выберите опцию «unpack the boot.img» из рабочей папки.
2. Скопируйте кернел файл в созданную папку «BOOT-EXTRACTED» и переименуйте файл в ”zImage”.
3. Выберите опцию «re-pack the boot.img».
4. Ваш рабочий фолдер «boot.img» стал с новым кернелом.
5. Если кернел идет с другими файлами, такими как ”*.ko files для /system folder”, то скопируйте их в соответствующие местоположения.
Добавление своих программ:
- Кидаем программы в «рабочая папка/system/app» с заменой если потребуется.
- Устанавливаем их в data:
1. В «Advanced options» выбираем «Add /data/app functionality», после этого создаётся папка «рабочая папка/data/app».
2. В неё кидаем программы.
Особенности/дополнительные возможности при работе с ROM:
В теме нет куратора. Если в теме есть пользователь, желающий стать Куратором и соответствующий Требованиям для кандидатов, он может подать заявку в теме Хочу стать Куратором (предварительно изучив шапку темы и все материалы для кураторов).
До назначения куратора, по вопросам наполнения шапки, обращайтесь к модераторам раздела через кнопку под сообщениями, на которые необходимо добавить ссылки.
Сообщение отредактировал vaalf — 04.09.18, 19:26
Причина редактирования: Редактирование шапки
14.02.12, 11:08 | #2
●
Постоянный
Реп: ( 269 )
Тема постепенно будет наполнятся по мере накопления знаний.
Внимательно читайте инструкцию, не задавайте глупых вопросов.
Если есть поправки — не стесняйтесь, пишите.
С первого раза только у единиц получится сделать прошивку, которая хотя бы запустится. Старайтесь, читайте и со временем всё получится. Я сам убил неделю на освоение работы с кухней, бывает и сейчас открываю для себя что-то новое.
Сообщение отредактировал bsi94 — 23.07.16, 10:28
14.02.12, 14:43 | #3
●
Постоянный
Реп: ( 15 )
может быть не совсем по теме, НО. вопрос такой: есть ли прога какая нибудь или способ изменить набор частот ядра, т.е. например:
имеем пакет AIO 1.1, ядро в нем 150#1 со стоковыми частотами, можно ли все оставить тоже самое но верхнюю частоту задрать например до 1.8 или 1.9 ? :blush:
пс. спасибо за гайд.
Сообщение отредактировал darkman1988 — 14.02.12, 14:43
Сборка прошивки на Android своими руками
Нередко случается, что кому-то из пользователей Android не по душе стандартная прошивка его смартфона либо планшета. Например, по причине лишнего софта, из-за которого стремительно сокращается внутренняя память, либо просто не нравится функционал некоторых программ и хочется заменить их другими. Начинаются усиленные поиски пользовательских прошивок, но и они не всегда дают желаемый результат. Что делать?
Далеко не все знают, что прошивку можно допилить под свои личные потребности. Существуют несколько способов, как это можно сделать, каждый из них отличается уровнем сложности и необходимым набором инструментов. И, если вы не знаете, как собрать прошивку Android самостоятельно, эта статья для вас.
Сборка из исходников
Один из самых правильных способов является использование исходного кода, публикуемого командами разработчиков Google или Cyanogenmod. Но одновременно этот способ самый сложный, ведь для того, чтобы собрать прошивку Android из исходников, оптимизировать её и заставить работать на конкретном устройстве, нужно обладать довольно глубокими навыками программирования, разбираться во всех тонкостях работы мобильной операционной системы и железа устройства. Эти знания не приобретаются за день, поэтому в этой статье мы не будем подробно описывать этот способ.

Изменение уже готового файла
Если вы не слишком разбираетесь во всех тонкостях работы ОС, но хотите что-то изменить в своей прошивке, лучшим решением будет подправить уже готовое решение. Можно изменить как родную, встроенную прошивку, так и уже изменённую кем-то другим. Кастомизированных прошивок в интернете очень много, и вы вряд ли будете испытывать недостаток в их количестве. Итак, представляем пошаговую инструкцию по сборке собственной прошивки на основе уже существующего продукта.
Редактирование с помощью компьютера
Необходимое программное обеспечение
Нам понадобится компьютер, устройство, файл прошивки и специальная программа под названием Android Kitchen (известная также как кухня). Файл прошивки можно найти на специализированных форумах, наиболее известные — англоязычный XDA Developers и русскоязычный 4PDA. В разделе вашей модели устройства можно найти ссылки на самые популярные и проверенные прошивки как официальные стоковые, так и неофициальные пользовательские.
Далее нужно установить кухню на свой компьютер. Лучше всего работать под Linux, но необходимые библиотеки можно поставить и в Windows. В этом случае можно выйти из ситуации установив Cygwin. Загрузите архив и следуйте пошаговой инструкции, помещённой в архиве. Перед этим потребуется установить также Java Platform (JDK) с официального сайта (https://www.oracle.com/java/technologies/javase-downloads.html для Windows) или же в Центре приложений Ubuntu найти и скачать OpenJDK Java 6 Runtime либо похожее (для Linux). Второй вариант использования — установить Linux на виртуальную машину и управлять процессом через неё.

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

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

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

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

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

Изменение собственной прошивки
- Если на устройстве ещё не получен root, получите его. Как это сделать, можно прочесть на специализированных форумах в разделе, посвящённом именно вашему аппарату. Дело в том, что универсальные способы поддерживаются малым количеством устройств и большинство из них имеют индивидуальную процедуру.
- Установите Nandroid backup ) и сделайте с его помощью резервную копию системы своего девайса. Сохраните её в надёжном месте, например, в облачном хранилище. Для чего создавать копию? Вдруг что-то пойдёт не так или вы нечаянно удалите что-то нужное — будет возможность вернуть всё как было.

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

Изменение сторонней прошивки в ZIP-архиве
- Скачайте интересующий вас файл прошивки в формате .zip.
- Установите файловый менеджер, умеющий работать с архивами, например, ES Проводник или Total Commander, и распакуйте содержимое архива.
- Удалите лишние или добавьте недостающие приложения, после чего запакуйте архив обратно и переместите в корень флеш-карты.
- С помощью Nandroid backup ) создайте резервную копию системы и скопируйте её на облачный диск.
- Прошейте устройство из режима Recovery.

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

Как я делал кастомное ОТА для PixelExperience, на 10 андроиде.

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

- waiser
- Инструкции / Сборка андроид из исходников
- 2020-02-04
- 5 280

Как сделать свое ОТА для кастомной прошивки

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

- waiser
- Инструкции / Сборка андроид из исходников
- 2019-08-29
- 10 416

Активация и настройка среды на cloud.google.com процесс сборки прошивки на готовых дереве, ядре, вендоре.

Всем привет, пишу статью о том как собрать прошивку на андроид 9 используя cloud.google.com.
Начнем с того, что не все мы имеем высокопроизводительные компы, а собрать свою сборку и научиться то хочется, выход: cloud.google.com

- waiser
- Инструкции / Сборка андроид из исходников
- 2019-04-08
- 63 131
Кастомные Android-прошивки и всё, что с ними связано
Покупаешь новый смартфон и ходишь радостный пока опять новый кастом не накатил. Он и работает шустро, и игрушки идут лучше: явно побыстрее стока. Но тут прилетело OTA, ядро новое вышло, да и Magisk обновился уже — пора ставить апдейты и получать “бутлупы”. Да, от общего числа пользователей Android смартфонов доля тех, кто сидит на кастомах крайне мала. Однако, всё же людям приходят в голову странные мысли по типу: “А не прошить бы мне свой Xiaomi, что б летал как ракета”. По такому случаю статья, в которой рассказывается про кастомные Android прошивки от А до Я.
Кастомные прошивки и их классификация
Что же из себя представляет кастомная Android-прошивка? Это система, к созданию которой причастны сторонние разработчики: то есть любая неофициальная прошивка. В большинстве случаев отличительными чертами подобных прошивок является иная оболочка, модифицированное ядро системы, широкая кастомизация и много разных плюшек, которых нет в официальных Android прошивках, созданных компанией-производителем. Чаще всего такие прошивки работают быстрее официальных, но реже они работают стабильнее. Существует огромное множество кастомов, которые делятся на виды, изучением которых мы сейчас и займёмся.
Вот основые вариации Android-прошивок:
- Официальная от производителя (модифицированная)
- Кастомная — собранная из исходников
- GSI-прошивка
- Портированная прошивка
А теперь про каждую поподробнее. Официальная прошивка от производителя установлена в смартфоне с завода: то есть вы покупаете телефон именно с ней. Её делал отдел компании-производителя, который отвечает за программное обеспечение своих устройств. Эти прошивки часто модифицируют умельцы путём распаковки образа прошивки, внося свои изменения. Также, любая уважающая себя компания предоставляет исходный код прошивки, которую они создали: те самые исходники. Далее по списку кастомная прошивка, собранная из исходников — та, которую собирали сторонние разработчики с нуля. Такая прошивка может включать в себя всевозмножные улучшения и кастомизации, которых не было в официальной, и их нельзя было добавить путём простой распаковки/запаковки образа. Следующая у нас GSI-прошивка — отличается от двух предыдущих тем, что при её установке не затрагивается раздел Vendor, так как GSI-образ это и есть образ системы. Работают эти GSI прошивки куда медленнее и менее стабильно, чем собранные из исходников. Ну и последняя — порт прошивки с другого девайса. Это прошивка, полностью перенесённая с иного устройства и изменённая для работы на конкретном смартфоне. По большей части это самые багованные прошивки, так как система не просто не родная, она ещё и содрана с другого устройства. Но их используют: к примеру те же любители фирменных оболочек различных устройств. Существует огромное колличество портированных прошивок со смартфонов OnePlus с их оболочкой OxygenOS, которая многим приходится по душе.
Мы будем рассматривать именно те кастомы, которые собираются из исходного кода. На это есть ряд причин, а именно: такие прошивки работают быстрее остальных, они стабильнее и представляют из себя полноценную замену стоковой, так как собирались с оптимизацией под конкретный девайс. Естественно, не без учёта качества сборки. На данный момент кастомы имеют широкое распространение среди многих моделей различных брендов. Также, само сообщество создателей кастомов постоянно растёт и развивается, поэтому найти стабильно работающую прошивку под свой смартфон не представляет особой трудности.
Существует классификация прошивок, показывающая, на основе какого исходного кода взята база для сборки:
- AOSP — Android Open Source Project. Представляет из себя абсолютно голую систему Android, на которую в последующем «навешивают» оболочки, по типу One UI, MIUI, OxygenOS и так далее. Пояснение: смартфонах Google Pixel не AOSP, в них установлена собственная оболочка на базе AOSP.
- CAF — Code Aurora Forum. Проект Linux Foundation, который содержит программный код для прошивок смартфонов на базе процессоров Qualcomm. Прошивки, которые базируются на CAF-тегах могут быть не самыми стабильными, но за счёт последних версий драйверов они имеют ряд приемуществ: лучшая производительность, более высокая скорость интернет соединения, хорошая автономность и улучшенное качество звучание.
- LineageOS — кастом, на котором базируются многие другие кастомы, вроде CRdroid, Resurrection Remix и им подобные. Изначально был CyanogenMod: именно он был на слуху, да и развивался постоянно. Позже переименовался в LineageOS. В какой-то момент в AOSP было внесено столько изменений разработчиками линейки, что её начали использовать как базу для других прошивок.
Зачем же нужны кастомные прошивки?
Простому пользователю — незачем. Если хочется поиздеваться над устройством, либо наоборот преобразить его с помощью новоиспечённого кастома на последней версии Android и перевернуть в нём всё, чтобы сделать так, как хочется — это ваше. Когда человек ставит кастом, он берёт ответственность за работоспособность девайса полностью на себя, и в случае, если вдруг что-то пойдёт не так, а вы не сможете починить свой смартфон, то, это уже будет ваше личное дело. Скорее всего ваш случай не попадёт под гарантийный, даже если сломалась аппаратная часть смартфона. Придётся как минимум заставлять СЦ проводить нормальную диагностику, чтобы исключить самую тупую причину поломки: кастом. Также, почти любую софтовую поломку во время прошивки можно устранить в домашних условиях, не прибегая к помощи работников сервисного центра. Так что если кто надумал шиться, знайте: кирпич это не так страшно. В любом случае в интернете есть огромное колличество гайдов «как и что в случае чего».
Рассматривая использование на повседневной основе кастомной прошивки, созданной хорошим сборщиком, можно ощутить высокую плавность и скорость работы пользовательского интерфеса в сравнении со стоковой прошивкой. Прирост производительности в играх и повышение автономности также обеспечены. Вполне возможно улучшение качества звучания, фото и видео съёмки смартфона. Если не из основного, то кастомы часто имеют последние патчи безопасности и обновления системы, которые повышают стабильность и скорость работы устройства. Также, в зависимости от прошивки появляются возможности кастомизации, которых не было в стоке.
Процесс установки прошивки и разделы накопителя
Итак, вот мы и подошли к самому главному: установка. Это универсальная инструкция для всех смартфонов, которая будет работать при установке большей части прошивок. Но, на некоторых устройствах могут быть свои особенности установки, которые нужно уточнять в источнике откуда берёте прошивку. Обращать внимание на нюансы действительно очень важно, так как если шить «как захотел», то в лучшем случае можно получить «бутлуп», а в худшем будет «кирпич». Все манипуляции должны производится на уже разблокированном загрузчике. Разблокировка осуществляется с помощью софта от производителя смартфона, либо командами Fastboot. За подробностями — в тему своего устройства.
При подготовке скачиваем всё, что необходимо для установки прошивки: нужное TWRP, последний Firmware (если имеется на ваш смартфон), сама прошивка, кастомное ядро (вдруг нужно), патчи и фиксы (при надобности), по желанию GAPPS (Google Apps), дешифратор (снятие шифрования Data) и Magisk (Root-права). После того, как всё скачалось, лучшим вариантом будет перекинуть все эти файлы на флешку, чтобы шиться с неё. Из всего выше перечисленного для установки прошивки нужно только TWRP и сама прошивка, но, чаще всего люди шьют и всё остальное, поэтому вот последовательность, которая включает в себя самую обычную установку прошивки.
TWRP — модифицированная версия Recovery (режим восстановления), в котором мы и будем производить все манипуляции. Для этого достаточно установить драйвера для своего устройства на компьютер и прошить образ нужного TWRP в раздел «Recovery» (если не грузиться, то и в Boot) через специальную утилиту в зависимости от платформы процессора смартфона: MediaTek или Qualcomm (SPFlashTool или Minimal ADB and Fastboot). Выбирайте TWRP на вкус и цвет, главное чтобы работало. Если TWRP уже установлен, сразу начинаем со второго пункта.
Основные разделы смартфона, которые видно в TWRP:
- Dalvik / ART Cache — кэш виртуальных машин Dalvik / ART.
- Cache — системный кэш.
- Data — раздел с данными системы и всех установленных в ней программ.
- System — сама система. Те же GSI-образы устанавливаются именно в этот раздел.
- Vendor — бинарники, конфиги, библиотеки. В общем всё, что запихнул производитель в смартфон, для нормальной его работы.
- Внутренняя память — она у вас на главной странице в проводнике. Созданные или скачанные вами файлы.
- Micro SDCard — точка монтирования карты памяти (флеш-память).
- USB OTG — точка монтирования флешки, либо харда, подключенных по OTG-кабелю.
Заходим в TWRP той комбинацией клавиш смартфона, которой заходят в режим Recovery и производим очистку смартфона, чтобы кастом шился на чистый накопитель. Для этого в TWRP ищём пункт связанный с очисткой и заходим в него. Там же мы наблюдаем разделы смартфона и галочки рядом с ними. Нам нужно поставить галки напротив разделов Dalvik / ART Cache, Cache, Data, System, Vendor (необязательно), Внутренняя память, но не ставить на Micro SDCard и USB OTG, которые указывают на SD-карту, либо OTG-накопитель, в зависимости от того, где у вас лежат файлы для прошивки. После мы просто проводим свайп для очистки разделов (вы потеряете все данные на смартфоне). Далее нам нужно отформатировать DATA-раздел. Делается это там же в меню очистки с введением подтверждения в виде слова «yes». После успешного форматирования DATA-раздела нам нужно сделать перезапуск в TWRP. Зачем? Это может быть необходимо, для правильного определения разделов самим TWRP во избежание ошибок при установке прошивки. Также, существует вариант OTA-обновления: установка прошивки как обновления уже существующей, без форматирования памяти.
- Грузимся обратно в TWRP и приступаем к установке: Выбираем накопитель на котором лежат необходимые файлы и ставим всё в такой последовательности:
- Firmware
- Прошивка (Система, которую ставим)
- Перезагрузка в TWRP (По причине, описанной выше)
- Ядро
- Перезагрузка в TWRP
- Необходимые патчи / фиксы
- GAPPS (Google Services)
- DFE (Отключение шифрования)
- Magisk (Root права)
- Перезагрузка в систему и дальнейшая её настройка на ваш вкус.
Составляющих в последовательности установки может быть и меньше. Как я уже сказал, достаточно в TWRP установить лишь прошивку и если ей ничего более не нужно, то она запустится и будет работать.
Проблемы при установке прошивки
Ошибки могут быть разные, но решаются по одному и тому же алгоритму. Если TWRP выдаёт ошибку, то:
- Проверить какую прошивку вы ставите. Всякое бывает, можно и не свою скачать случайно.
- Перечитать инструкцию если таковая есть, вдруг что-то пропустили.
- Перекачать установочный zip с прошивкой (он может быть битый).
- Если 1-2-3 не сработали, то проводим очистку разделов и форматируем Data.
- Крайний случай: прошиваем стоковой прошивкой через фирменный прошивальщик.
- Только при наличии программатора и умения с ним работать: шьём через него сток (может решить проблему, если не помог обычный прошивальщик)
- Пробуем восстановить смартфон по индивидуальной для каждого инструкции «Восстановление из кирпича», которая ищется в теме своего устройства.
- Если совсем никак, скорее всего проблема в железе. Поэтому остаётся только вариант сервисного центра.
Все проблемы, которые могут возникнуть в рабочей системе решаются установкой «Фикса от Васяна», сменой ядра, либо установкой другого кастома.
Если вы уже решили заняться этим делом, то ищите и пытайтесь пофиксить, а ещё лучше показать остальным как вы решили свою проблему, если решения до вас не было.
Выводы: нужно оно нам, или нет
Для начала придётся немного пострадать, а там уже опыт наберётся и можно будет шиться без гайдов и фиксить любую проблему самому. Получение удовольствия от использования своего смартфона станет не таким редким явлением. Захотели себе что-то особенное и лучше чем сток? Готовы уделять этому время? Форумы с прошивками вас ждут. «Кастом будет всегда лучше любого стока» — эта фраза будет иметь смысл только в том случае, если прошивка хорошо собрана, имеет ядро с различными оптимизациями и почищена от мусорных приложений. Тут дело уже не во вкусах, а в том, как на самом деле.
- Разработка под Android
- Разработка под Linux
- Гаджеты
- Смартфоны
