Создать кастомную прошивку на андроид непросто, для этого нужны специальные программные средства и определенные навыки, а также алгоритм действий, который мы опишем в этой статье.
Разберем частный случай и начнем по порядку. Для создания кастомной прошивки андроид потребуются:
- Персональный или переносной компьютер, на борту которой присутствует операционная система Ubuntu и установлена Java.
- «Кухня» — приложение для обработки образов системных партиций.
- Собственно сама, подлежащая обработке прошивка Android.
Шаг 1 — установка Ubuntu
Система Ubuntu создана на базе ядра Linux и основывается на Debian, разработана компанией Canonical. Эту систему вовсе не обязательно устанавливать вместо действующей, запускать ее через эмулятор, и так далее.
Разборка и сборка прошивки Android Smart TV
Чтобы комфортно использовать все ее преимущества, достаточно воспользоваться приложением Wubi, способным установить Ubuntu под Windows. Wubi — сокраoение от Windows Ubuntu Installer.
Скачав установщик, и установив через него новую операционку, при загрузке компьютера можно зайти в ту или иную систему на выбор, и осуществлять управление ею через панель управления Виндовс.
Шаг 2 — установка Java
Java – разработанный в 1995 году язык программирования, его название, по всей видимости, взято из кинофильмов (смешной народец Джава из Звездных Войн).
На этой технологии базируется большая часть современного программного обеспечения самых разных видов. Некоторые сайты работают только при наличии Java на борту ПК.
Чтобы установить ее нужно:
- Войти в систему Ubuntu, и открыть Терминал при помощи клавиш Ctrl+Alt+T.
- В открывшемся окне для ввода/вывода информации в ОС Ubuntu воспользоваться командой sudo add-apt-repository “deb http://archive.canonical.com/ubuntu lucid partner” — позволяет подключить новый репозиторий, с которого можно загрузить Java. Для этого потребуется ввести пароль для получения прав Суперадминистратора, который задается при установке Ubuntu. Далее нужно воспользоваться следующими командами:
- sudo apt-get update для обновления списка источников.
- sudo apt-get install sun-java6-jre sun java6-plugin sun-java6-fonts для установки Java.
Шаг 3 — работа с «кухней» для создания прошивки
Программа «кухни» — это основное средство для работы с прошивками андроид. Их существует несколько видов, мы рассмотрим работу с kitchen от Dsixda.
- Скачав необходимые файлы, нужно распаковать их в домашнюю папку в каталог kitchen.
- Запустить Терминал, при помощи команды Is вывести на его экран список документов домашней папки. Синим цветом будут выделены каталоги, красным — файлы архивов, и так далее.
- Открыть в проводнике папку Kitchen, перенести в каталог original_update файл обрабатываемой прошивки в любом формате.
- Возвратиться в Терминал с открытой папкой Kitchen, ввести команду Is. Среди файлов появится Menu, его следует запустить командой ./menu. Здесь откроется список пронумерованных команд, которые можно выполнять, вводя их номер в строку, и нажимая Enter.
- Чтобы разобрать прошивку, следует ввести команду 1. Кухня после этого начнет выводить множество вопросов, на которые нужно отвечать клавишей Enter (нужные значения введены по умолчанию).
Эти действия приведут в начальное меню программы. Вернувшись в папку Kitchen, можно будет найти папку «WORKING_x_y», где x и y – дата и время ее создания.
В ней будут содержаться разобранные файлы прошивки. В папке System можно найти все системные файлы. Простое удаление части этих файлов приведет к изменению прошивки.
Изменив набор базовых приложений, функций, настроек, и внеся все желаемые поправки в файлы прошивки, необходимо ее собрать.
Для этого нужно вернуться в Терминал, ввести команду 99, снова ответить клавишей Enter на все возникающие вопросы. После этого программа выбросит пользователя в начальное меню, а в папке OUTPUT_ZIP будет лежать файл новой прошивки, которую затем можно устанавливать на мобильное устройство.
Есть и другие способы создания авторских кастомных прошивок android, а необходимые для этого программы можно найти в сети, они позволяют «вскрыть» файлы операционной системы, и изменять те или иные параметры по своему желанию.
Вот еще несколько программ, предназначенных для этого:
- Android SDK – среда разработки, созданная специально для работы с приложениями для Android, она позволяет проверять программный код.
- Android Kitchen – необходима для обработки образов системных партиций в прошивке.
- JD-GUI – декомпилятор, способный к работе с программным языком Java. Его аналог – DJ Java Decompiler.
- smali – для работы с dalvik-кодом. Предназначена для дизассемблирования кода, backsmali позволяет произвести ассемблирование dalvik-кода.
- dex2jar – утилита, позволяющая конвертировать исполняемые файлы, составленные на dalvik-коде.
Источник: go2android.ru
Сборка прошивки на 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 самостоятельно? Что вы в ней меняли и каким образом это делали? Будет интересно, если вы поделитесь своими отзывами.
Источник: protabletpc.ru
Как сделать кастомную прошивку для CWM/TWRP из заводской [Инструкция / Android Kitchen]
Инструкция по созданию кастомной прошивки в виде zip архива для прошивки через кастомное рекавери при помощи Android Kitchen
Что нам понадобится:
1. Установленная и настроенная «кухня» для Android: Как установить Android Kitchen на Windows [Инструкция]
2. Прошивка для вашего устройства под SP Flash Tool (папка с файлами вроде recovery.img, system.img, scatter.txt и так далее)
Инструкция по созданию прошивки для CWM/TWRP:
1. После того как установили Android Kitchen, берёте из папки с прошивкой файлы system.img и boot.img и копируете их в папку для работы с прошивками, а именно kitchenoriginal_update (если не понятно где это, то установите Android Kitchen по инструкции выше, все станет ясно после)
2. Далее запускаем Cygwin и Android Kitchen. Запускать Cygwin обазятельно на правах администратора, как всё это делается я описал в инструкции по настройке Android Kitchen, так что сначала установите «кухню», потом всё станет ясно
3. После того как вы вошли в меню Android Kitchen, выбираем первый пункт, то есть:
========================================================== Android Kitchen 0.224 — by dsixda (xda-developers.com) ========================================================== > MAIN MENU 1 — Set up working folder from ROM 2 — Add root permissions 3 — Add BusyBox 4 — Disable boot screen sounds 5 — Zipalign all *.apk files to optimize RAM usage 6 — Change wipe status of ROM 7 — Change name of ROM 8 — Show working folder information 0 — ADVANCED OPTIONS 00 — LEGACY OPTIONS (old and rarely used) 99 — Build ROM from working folder u — Kitchen Info/Update/Donate x — Exit Enter option: 1
4. После того как нажали 1 и Enter, появляется новое меню тут просто нажимаем Enter для продолжения, затем 1 и Enter, и после того как система определит наши system.img и boot.img (которые мы скинули в рабочую папку ранее), нам будет предложено переименовать ли папку куда будет распакованы все файлы прошивки для работы с ними, или не переименовывать, выберите «n», то есть не переименовывать):
CREATE WORKING FOLDER FOR ROM ========================================================== Ensure there is at least one ROM under the ‘original-update’ folder! Select an option: s — Show supported formats x — Abort, don’t create working folder Or press Enter to continue ? Please wait . Available ROMs: (1) system.img and boot.img Enter selection number (default=1, cancel=0, r=refresh): 1 Found original_update/system.img Found original_update/boot.img The new working folder will be named WORKING_032915_064017 Change the name (y/n)? (default n): n
5. Далее начинается распаковка прошивки, может занять некоторое время. Важно, во время распаковки появится окно распаковщика Ext2explore . Не закрывайте его, а внимательно прочтите что написано в окне Android Kitchen (если дружите с англ.):
###################################################################### READ INSTRUCTIONS BELOW TO EXTRACT FILES FROM ext4_system.img: 1) Ignore the ‘Cannot Read Disk’ warning dialog (press ‘OK’) if it appears! 2) When Ext2Explore appears, use ‘File-> Open Image’ to open: C:cygwinhomePC_UserkitchenWORKING_032915_064017systemext4_system.img 3) After it loads, right-click on the new icon displayed in the left frame, and select Save 4) Select C:cygwinPC_UserkitchenWORKING_032915_064017system 5) Wait for extraction to finish and then close Ext2Explore ######################################################################
6. Итак делаем что написано, в открывшемся окне Ext2Explore выбираем File -> Open Image и выбираем C:cygwinhomePC_UserkitchenWORKING_032915_064017systemext4_system.img . После чего в левой части Ext2Explore , делаем правый клик по пункту и выбираем Save (см. скриншот ниже), после чего указываем путь для сохранения распакованных файлов, а именно C:cygwinPC_UserkitchenWORKING_032915_064017system (начнётся распаковка, которая может занять некоторое время, не прерывайте).
7. После того как распаковка окончена, закройте окно Ext2Explore и нажмите Enter в окне Android Kitchen. Начнется завершающая стадия распаковки прошивки после которой вам будет предложено посмотреть информацию о данной прошивке, для выбора опции нажмите «y»:
Finished setting up working folder! Would you like to view this ROM’s info (y/n)? (default: y): y
8. Для примера показана рабочая информация по прошивке взятой с Lenovo A369i:
Working folder information (v0.224) Android OS version : 4.2.2 Device : A369i Model : Lenovo A369i ROM Name : A369i_ROW_S201_140610 Rooted (Supersu app + su) : NO Rooted (unsecured boot.img) : NO BusyBox installed : NO BuxyBox run-parts support : NO Apps2SD (Apps to EXT) enabled : NO /date/app enabled : NO Custom boot animation allowed : NO Nano text editor installed : NO Bash shell support : NO /system/framework is deodexed : NO /system/app is deodexed : NO radio.img found : NO ROM will wipe all data : NO Press Enter to continue
9. Всё, теперь прошивка, фактически готова. После нажатия Enter, вы будете возвращены в главное меню Android Kitchen, теперь выбираем пункт:
99 — Build ROM from working folder
10. Далее вам будет предложено выбрать в каком режиме будет создана прошивка, рекомендую выбирать первый пункт:
1 = Interactive Mode — recommended for most users (Guide me through the build)
11. Далее будет предложено оптимизировать все apk файлы при помощи «zipalign», можете нажать «y» или «n», не важно:
Would you like to optimize APK files by zipaligning them (y/n)? (default: y): y
12. Дальше будет очень важный пункт здесь, нам надо нажать «y» (то есть yes, согласиться). Будет создан файл updater-sсript, который мы отредактируем уже потом, когда создадим прошивку, так что нажмите просто «y» и пусть «кухня сама всё сделает»:
Use updater-sсript in ROM’s ZIP file (y/n)? (default: y) y
13. По завершению создания updater-sсript, нам будет предложено отредактировать его сейчас и внести нужные изменения, но как я сказал ранее, редактировать его удобнее потом, после того как прошивка уже собрана, поэтому оставляет тут все как есть:
Proceed with the change (y/n)? y = Proceed; updater-sсript and update-binary will be used inthe ZIP file; update- will remain in working folder. n = Cancel; updater-sсript and update-binary will be deleted and not used. ? (default: y): y
14. Далее начнется создание update.zip, после которого нам будет предложено подписать архив с прошивкой, соглашаемся на это (хотя по-идее можно и не подписывать, всё равно прошивку надо будет разбирать для редактирования updater-sсript):
It is recommended that you sign your ROM. Sign it (y/n)? (default: y): y
15. Далее последний пункт где нам будет предложено изменить название прошивки, можно оставить как есть:
The new ROM will be named A369i_signed_032915_073536.zip Change the name (y/n)? (default: n): n
16. Всё, прошивка создана, и находится в папке с кухней OUTPUT_ZIP/A369i_signed_032915_073536.zip . Копируем архив целиком и переносим в отдельную, удобную для вас папку. Теперь надо редактировать updater-sсript. Android Kitchen можно закрыть.
17. Распаковываем содержимое нашей прошивки в отдельную папку и видим следующее:
18. Заходим в папку META-INFcomgoogleandroid и открываем при помощь любого текстового редактора файл updater-sсript (бесплатный Note++ вполне подойдёт, при помощи блокнота лучше не открывать, там все в кучу сбивается, я использую Sublime Text 2). Находим в файле две следующие строки, которые нам надо поменять:
format(«MTD», «system»); mount(«MTD», «system», «/system»);
Меняем их на следующие строки:
format(«ext4», «EMMC», «/dev/block/mmcblk0p4», «0», «/system»); mount(«ext4», «EMMC», «/dev/block/mmcblk0p4», «/system»);
Важно: я специально выделил красным цветом самое важное. Это точка монтирования «system» на моём устройстве, на Lenovo A369i, для вашего устройства эти данные могут отличаться.
Поэтому, чтобы узнать какой блок у вас отвечает за «system», нам надо выполнить команду «dumchar_info» через adb, как это сделать написано более подробно здесь: Как получить dumchar_info (информация о блоках системы), читаем только первый пост и устанавливаем только adb драйвера и adb инструменты, остальное не надо.
Итак после того как вы получили данные из dumchar_info, посмотрите путь куда у вас смотнирован «android» (это и есть system в dumchar_info) и отредактируйте две строки в updater-sсript соответственно:
android 0x0000000028a00000 0x0000000004960000 2 /dev/block/mmcblk0p4
Важно: точку монтирования раздела можно получить без dumchar_info, а просто через MTK Droid Tools (нажмите на ссылку)
19. Всё, после того как вы отредактировали updater-sсript, закройте его и сохраните изменения. Теперь нам надо запаковать прошивку, просто возьмите и выделите все три файла прошивки и добавьте их в архив (обязательно zip архив, а не rar или 7z):
20. Почти всё, но не совсем. Далее пробуем прошивать прошивку через кастомное рекавери. Обязательно сначала сделайте в рекавери полный бэкап! . Если вылетает ошибка Status 0 или Status 1 , то, скорее всего у нас неправильный update-binary , который находится там же где и updater-sсript , то есть META-INFcomgoogleandroid . Поэтому пробуем менять update-binary и снова запаковывать прошивку и снова пробывать поставть.
Лучше всего взять update-binary из другой кастомной прошивки на ваше устройство, но если нету, я залил во вложений другие update-binary, которые должны подойти, пробуйте их. Вообще update-binary, это файл который трансформирует в понятные для системы команды, указания из updater-sсript, то есть указания по установке прошивки.
21. Всё, ваша первая кастомная прошивка на MediaTek устройство готова . Можно конечно еще было добавить root и busybox и еще чего в Android Kitchen, но я через эти пункты не шел, там все понятно в принципе в меню, если захотите добавите сами.
Источник: mdforum.su