vash-web.ru

Веб-разработка, WordPress, мобильные устройства...


vash-web.ru

Как я портировал прошивки для смартфона с процессором Spreadtrum SC7731G

Информация о способе портирования прошивки для смартфона с процессором Spreadtrum SC7731G на примере ZTE Blade AF3

ПРЕДУПРЕЖДЕНИЕ: ПРОЦЕСС ПОРТИРОВАНИЯ ПРОШИВОК МОЖЕТ ЗАКОНЧИТСЯ ДЛЯ ВАШЕГО ТЕЛЕФОНА КРАЙНЕ ПЛАЧЕВНО. ВСЁ ЧТО ВЫ БУДЕТЕ ДЕЛАТЬ — ТОЛЬКО НА СВОЙ СТРАХ И РИСК…

Мне, чтобы собрать первую прошивку для смартфона Blade AF3 потребовалось около двух месяцев. Но по-большому счёту, всё оказалось проще,  чем я думал. Желающим, прочитав эту страницу будет несомненно легче….

ZTE_Blade_AF3-8-0903331

Информация к сведению: Прошивку можно собрать в формате .PAC для прошивки через компьютер с помощью ResearchDownload или в виде zip-файла для установки через CWM-TWRP Рекавери.

На этой странице я опишу как собрать прошивку Андроид 4.4.2 в формате .PAC для установки на телефон через компьютер.

Что желательно знать.

1. Уметь прошивать телефон прошивкой в формате .PAC, что поможет в конечном итоге и при распаковке прошивки в  формате .PAC для её предварительного редактирования. Как это делается можно посмотреть на этой странице — Немного информации о прошивке на смартфоне ZTE Blade AF3
2. Уметь разбирать главный файл прошивки system.img и в определённых случаях его собрать.
3. Не будет лишним уметь разбирать (а так же изменять и собирать) файлы прошивки boot.img и recovery.img.
4. Не будет лишним уметь редактировать-декомпилировать-компилировать приложения в формате .apk.

Используемые программы

1. Для прошивки (распаковки прошивки) использовал сначала программу ResearchDownload_R2.9.9005, с появлением Андроид 5.0 — RESEARCHDOWNLOAD_R2.9.9016.
2. Для разборки system.img (4.4.2-5.1) использовал RKwinToolsMod_v2_8. Собирал тоже этой прогой, но начиная с Андроид 5.0 — собрать рабочий system.img не получилось.
3. Файлы прошивки boot.img и recovery.img разбирал и собирал с помощью Android Image Kitchen.
4. Для сборки прошивки в виде zip-а для CWM использовал обыкновенный WinRAR, а также текстовый редактор Notepad++.
5. Для декомпиляции файлов  .apk использовал в основном ApkTools200b9m, что не всегда помогало. Вообще работа с .apk имеет специфические тонкости которые я до конца так ещё и не постиг..

Портирование прошивок в формате .PAC

ИНФОРМАЦИЯ НА ДАННОЙ СТРАНИЦЕ РАССЧИТАНА НА ЛЮДЕЙ ЗНАКОМЫХ НЕ ПО НАСЛЫШКЕ С СИСТЕМОЙ АНДРОИДОМ И ПОЭТОМУ ЭЛЕМЕНТОВ «РАЗЖЁВЫВАНИЯ» МАТЕРИАЛА НЕ БУДЕТ.

Основным критерием в выборе донора должно быть сходство процессоров и Андроидов — если телефон с 4.4.2, то и донор тоже должен быть 4.4.2. Крайне желательно (но не критично) чтобы и по «железу» устройства были максимально схожи.

Для начала надо скачать прошивку от донора. Такие есть на сайте http://www.needrom.com/. Для телефонов с процессором SC7731ЗДЕСЬ. В описании прошивки обычно указывается кое-какая информация о данном ПО и выглядит примерно так — Official ROM Colors X14 version: FS031M02_Z10_WK_K548_T20_FWVGA_V01_64X4_BT_FM_WIFI_GPS_ACC_PLS_2SIM_20150803_1739 – scx35_sp7731gea_fs031_project-user 4.4.2 KOT49H, где обращаем на выделенные мною красным цветом буквы и цифры. Если посмотреть в build.prop телефона Blade AF3, то такие строки тоже найдутся. И хоть это не обязательное правило, но чем более похоже ПО, тем легче может пойти процесс портирования.

Скаченную прошивку распаковать и запустить ResearchDownload_R2.9.9005, выбрать распакованный из архива PAC-файл. Перейти по пути C:\Users\User-Name\AppData\Local\Temp\_DownloadFiles****** — где в последнем каталоге и будет находится прошивка в более привычном виде.

ZTE_Blade_AF3-19-50-1710011

Если использовать RESEARCHDOWNLOAD_R2.9.9016 - то путь к распакованной прошивке будет выглядеть примерно так (зависит от того в каком каталоге находится данная программа) — E:\Downloads\RESEARCHDOWNLOAD_R2.9.9016\Bin\ImageFiles\_DownloadFiles****** .

Для дальнейших действий копирую файлы - boot.img, kernel_logo.bmp(1), boot_logo.bmp (могут называться по другому), recovery.img, system.img и SC77xx.xml (может также называться по другому, но имеет расширение .xml) в отдельную папку с названием телефона данной прошивки.

Первым делом надо посмотреть файл SC77xx.xml, чтобы определить установленную разметку данной прошивки.

ZTE_Blade_AF3-17-2222

Она бывает в основном двух видов — первый вариант применяется на телефоне Blade AF3. При портировании второго варианта донора будут проблемы с отображением памяти, но чаще всего это можно решить путём дополнительных действий… но не всегда…

Также надо обращать внимание на размер файла system.img. Желательно чтобы он не должен превышать размер этого же файла стоковой прошивки (Для стокового Blade AF3 - 1187840 Кб). Или придётся вносить изменения в файл SC77xx.xml.

Далее открываю  стоковую прошивку от Blade AF3 в ResearchDownload и захожу в настройки программы (кнопка с двумя шестерёнками), где снимаю все галочки (останутся только на первых двух строчках). Далее устанавливаю галочку напротив system  и нажимаю на данную строку правой кнопкой мышки — откроется окно выбора файла, где надо выбрать system из прошивки-донора.

ZTE_Blade_AF3-15-20-1111

Далее надо прошить этот файл. Когда процесс закончится — нажать кнопку Stop (в виде квадратика), отсоединить телефон от компьютера, извлечь и вставить обратно аккумулятор и включить  телефон… если прошивки от похожих телефонов — есть большая вероятность, что система загрузится… Если нет — всегда есть возможность восстановить исходное состояние телефона, прошив обратно system из стоковой прошивки (такую прошивку можно попробовать запустить сделав в виде ZIP-а с установкой через CWM-TWRP Рекавери. В таком варианте проще вносить и проверять изменения в системе).

Если система запустилась, то одна из наиболее встречающихся неполадок — это неработающие камеры. Также возможно не работает поворот экрана. Данные проблемы часто  решает простая замена следующих нескольких либов из стоковой прошивки в папку /system/lib/hw. По камере — camera.sc8830.so и camera2.sc8830.so, по экрану — sensors.sc8830.so. В тяжёлых случая надо попробовать менять либы относящиеся к камере в папке /system/lib. Правда в некоторых случаях после такой замены система не запускается.

Если у донора разметка отличается от стоковой, то при запуске обнаружится что нет sd-карты, а возможно и не отображается внутренняя память. В этом случае иногда помогает небольшое редактирование файла framework-res.apk из папку /system/framework. Для этого нужно скопировать эти оба файла из прошивок стоковой и донора. Открыть стоковый framework-res.apk обыкновенным WinRAR-ом и извлечь из него файл — storage_list.xml, находящийся по такому пути — framework-res/res/xml. Далее открыть framework-res.apk донора и заменить в нём storage_list.xml файлом извлечённым из стокового. Теперь осталось его только как-то заменить в прошивке, что возможно сделать через TWRP-Рекавери встроенным файловым менеджером, предварительно поместив изменённый (и копию не изменённого на всякий случай)  framework-res.apk на sd-карту. И запустить систему… иногда вариант редактирования с помощью storage_list.xml от стоковой прошивки не проходит и я добавлял от другой прошивки, где с память было нормально сразу. По идее надо разбирать (декомпелировать)  framework-res.apk, но здесь возникает много сложностей для описания которых потребуется большая страница.

Продолжение следует…..

Статьи по теме:




32 комментариев

  • Леонид сказал-(а):

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

    Ответить
  • Аноним сказал-(а):

    Вопрос как создать swap файл (файл подкачки)???

    Ответить
    • Валера Привалов admin

      Никогда не занимался этим… не владею точной инфой, но похоже в прошивках уже реализована похожая функция — может только в ограниченном по размеру виде…
      В крайнем случае можно по-экспериментировать с приложениями типа Simple Root Swap

      Ответить
  • Рома сказал-(а):

    Валера какая прошивка лучше всего? (ну какая вам нравится)
    P.s Верните прежний шрифт

    Ответить

Поделиться мнением








Ввод в сообщение текстовых символов смайлов (типа - :-) и :-P ) автоматически преобразовываются в картинки (перед вставкой должен быть пробел - можно скопировать и вставить)...
ПРИМЕРЫ:

:-) улыбающийся :-D громко смеющийся :-))) смеющийся :-( Озадаченность или недовольство
:-|| Сердитый, разгневанный ;-) подмигивающий :-P показывающий язык :clap: браво, хлопать в ладоши
:arrow: Биться головой в стенку...

В комментариях вы можете использовать эти HTML Теги и атрибуты к вашему комментарию:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>