Инструкция по созданию кастомной прошивки в виде 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 и копируете их в папку для работы с прошивками, а именно \kitchen\original_update (если не понятно где это, то установите Android Kitchen по инструкции выше, все станет ясно после)
2. Далее запускаем Cygwin и Android Kitchen. Запускать Cygwin обазятельно на правах администратора, как всё это делается я описал в инструкции по настройке Android Kitchen, так что сначала установите "кухню", потом всё станет ясно
3. После того как вы вошли в меню Android Kitchen, выбираем первый пункт, то есть:4. После того как нажали 1 и Enter, появляется новое меню тут просто нажимаем Enter для продолжения, затем 1 и Enter, и после того как система определит наши system.img и boot.img (которые мы скинули в рабочую папку ранее), нам будет предложено переименовать ли папку куда будет распакованы все файлы прошивки для работы с ними, или не переименовывать, выберите "n", то есть не переименовывать):Код:========================================================== 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: 15. Далее начинается распаковка прошивки, может занять некоторое время. Важно, во время распаковки появится окно распаковщика Ext2explore. Не закрывайте его, а внимательно прочтите что написано в окне Android Kitchen (если дружите с англ.):Код: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 ? <--- жмём Enter Please wait ... Available ROMs: (1) system.img and boot.img Enter selection number (default=1, cancel=0, r=refresh): 1 <--- жмём 1 и Enter 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 <--- жмём n и Enter6. Итак делаем что написано, в открывшемся окне Ext2Explore выбираем File -> Open Image и выбираем C:\cygwin\home\PC_User\kitchen\WORKING_032915_064017\system\ext4_system.img. После чего в левой части Ext2Explore, делаем правый клик по пункту и выбираем Save (см. скриншот ниже), после чего указываем путь для сохранения распакованных файлов, а именно C:\cygwin\PC_User\kitchen\WORKING_032915_064017\system (начнётся распаковка, которая может занять некоторое время, не прерывайте).Код:###################################################################### 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:\cygwin\home\PC_User\kitchen\WORKING_032915_064017\system\ext4_system.img 3) After it loads, right-click on the new icon displayed in the left frame, and select Save 4) Select C:\cygwin\PC_User\kitchen\WORKING_032915_064017\system 5) Wait for extraction to finish and then close Ext2Explore ######################################################################
7. После того как распаковка окончена, закройте окно Ext2Explore и нажмите Enter в окне Android Kitchen. Начнется завершающая стадия распаковки прошивки после которой вам будет предложено посмотреть информацию о данной прошивке, для выбора опции нажмите "y":8. Для примера показана рабочая информация по прошивке взятой с Lenovo A369i:Код:Finished setting up working folder! Would you like to view this ROM's info (y/n)? (default: y): y <--- Нажмите y и Enter9. Всё, теперь прошивка, фактически готова. После нажатия Enter, вы будете возвращены в главное меню Android Kitchen, теперь выбираем пункт:Код: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 <--- Нажмите Enter10. Далее вам будет предложено выбрать в каком режиме будет создана прошивка, рекомендую выбирать первый пункт:Код:99 - Build ROM from working folder11. Далее будет предложено оптимизировать все apk файлы при помощи "zipalign", можете нажать "y" или "n", не важно:Код:1 = Interactive Mode - recommended for most users (Guide me through the build)12. Дальше будет очень важный пункт здесь, нам надо нажать "y" (то есть yes, согласиться). Будет создан файл updater-sсript, который мы отредактируем уже потом, когда создадим прошивку, так что нажмите просто "y" и пусть "кухня сама всё сделает":Код:Would you like to optimize APK files by zipaligning them (y/n)? (default: y): y13. По завершению создания updater-sсript, нам будет предложено отредактировать его сейчас и внести нужные изменения, но как я сказал ранее, редактировать его удобнее потом, после того как прошивка уже собрана, поэтому оставляет тут все как есть:Код:Use updater-sсript in ROM's ZIP file (y/n)? (default: y) y14. Далее начнется создание update.zip, после которого нам будет предложено подписать архив с прошивкой, соглашаемся на это (хотя по-идее можно и не подписывать, всё равно прошивку надо будет разбирать для редактирования 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 <--- Нажмите y и Enter15. Далее последний пункт где нам будет предложено изменить название прошивки, можно оставить как есть:Код:It is recommended that you sign your ROM. Sign it (y/n)? (default: y): y <--- Нажмите y и Enter16. Всё, прошивка создана, и находится в папке с кухней OUTPUT_ZIP/A369i_signed_032915_073536.zip. Копируем архив целиком и переносим в отдельную, удобную для вас папку. Теперь надо редактировать updater-sсript. Android Kitchen можно закрыть.Код:The new ROM will be named A369i_signed_032915_073536.zip Change the name (y/n)? (default: n): n <--- Нажмите n и Enter
17. Распаковываем содержимое нашей прошивки в отдельную папку и видим следующее:
18. Заходим в папку \META-INF\com\google\android и открываем при помощь любого текстового редактора файл updater-sсript (бесплатный Note++ вполне подойдёт, при помощи блокнота лучше не открывать, там все в кучу сбивается, я использую Sublime Text 2). Находим в файле две следующие строки, которые нам надо поменять:Меняем их на следующие строки:Код:format("MTD", "system"); mount("MTD", "system", "/system");Важно: я специально выделил красным цветом самое важное. Это точка монтирования "system" на моём устройстве, на Lenovo A369i, для вашего устройства эти данные могут отличаться. Поэтому, чтобы узнать какой блок у вас отвечает за "system", нам надо выполнить команду "dumchar_info" через adb, как это сделать написано более подробно здесь: Как получить dumchar_info (информация о блоках системы), читаем только первый пост и устанавливаем только adb драйвера и adb инструменты, остальное не надо.Код:format("ext4", "EMMC", "/dev/block/mmcblk0p4", "0", "/system"); mount("ext4", "EMMC", "/dev/block/mmcblk0p4", "/system");
Итак после того как вы получили данные из dumchar_info, посмотрите путь куда у вас смотнирован "android" (это и есть system в dumchar_info) и отредактируйте две строки в updater-sсript соответственно:Важно: точку монтирования раздела можно получить без dumchar_info, а просто через MTK Droid Tools (нажмите на ссылку)Код:android 0x0000000028a00000 0x0000000004960000 2 /dev/block/mmcblk0p4
19. Всё, после того как вы отредактировали updater-sсript, закройте его и сохраните изменения. Теперь нам надо запаковать прошивку, просто возьмите и выделите все три файла прошивки и добавьте их в архив (обязательно zip архив, а не rar или 7z):
20. Почти всё, но не совсем. Далее пробуем прошивать прошивку через кастомное рекавери. Обязательно сначала сделайте в рекавери полный бэкап!. Если вылетает ошибка Status 0 или Status 1, то, скорее всего у нас неправильный update-binary, который находится там же где и updater-sсript, то есть \META-INF\com\google\android. Поэтому пробуем менять update-binary и снова запаковывать прошивку и снова пробывать поставть. Лучше всего взять update-binary из другой кастомной прошивки на ваше устройство, но если нету, я залил во вложений другие update-binary, которые должны подойти, пробуйте их. Вообще update-binary, это файл который трансформирует в понятные для системы команды, указания из updater-sсript, то есть указания по установке прошивки.
21. Всё, ваша первая кастомная прошивка на MediaTek устройство готова. Можно конечно еще было добавить root и busybox и еще чего в Android Kitchen, но я через эти пункты не шел, там все понятно в принципе в меню, если захотите добавите сами.
Cкачать:
update-binary.zip246.2 Кб




. Можно конечно еще было добавить root и busybox и еще чего в Android Kitchen, но я через эти пункты не шел, там все понятно в принципе в меню, если захотите добавите сами.
в общем лучше всего на медиатеке это портировать кастом рекавери сперва.