Портирование прошивок qualcomm. Портирование прошивок Android. Как происходит портирование прошивки

Портирование прошивок интересует многих продвинутых пользователей, которые хотят адаптировать свое устройство для другой среды с сохранением её полезных свойств. Обычно основная цель этого процесса - сделать прошивку на своём гаджете «интереснее» и . Давайте рассмотрим, как всё это происходит на технике Android с платформой ARM.

Каждый из пользователей хотел бы добавить в свой гаджет что-то оригинальное

Что нужно для портирования прошивок?

Для осуществления этого процесса требуются следующие составляющие:

  • Приложение Notepad или другой текстовый редактор (впрочем, эта программа считается наиболее удобной и продуманной среди остальных).
  • Архиватор WinRar.
  • Компьютер, через который осуществляется весь процесс.
  • Два ROM`а с - один является источником для передачи данных прошивки, на другом мы будем собирать их для программного обеспечения.

Как происходит портирование прошивки?

Прежде всего, мы создаём backup папку на компьютере, копируя с директории system/app на ПК такие файлы с расширением.apk:

  • Vpnservices.
  • Camera.
  • Bluetooth.

Затем, на устройстве, где мы будем собирать прошивку (его другое название - BROM) мы удаляем эти файлы, а вместо них , который ещё называется PROM следующие директории:

  • /data.
  • /system/app.
  • /system/framework.
  • /system/fonts.
  • /system/media.

Ещё на базовый ROM мы копируем в папку /system/lib библиотеку libandroid_runtime.so. Теперь мы снова перемещаем в BROM прежде удалённые файлы из первого действия.

В последующем мы делаем копию таких библиотек из базового ROM’а в PROM, как:

  • system/lib.
  • /system/etc/init.d.
  • /system/etc/permissions.

Обратите внимание, что копирование производится с заменой существующих на другом оборудовании данных, а не в качестве их дополнения. Теперь мы удаляем три эти директории на BROM и на их место копируем всё из PROM`а.

Переходим к работе с редактором Notepad и выполняем следующие действия:

  • Открываем на каждом ROM`е файл build.prop и размещаем оба окна друг напротив друга.
  • Сверяем, чтобы запись ro.build.description= совпадала на обеих устройствах, иначе не удастся выполнить прошивку. Если нужно, так, чтобы записи в PROM и BROM были идентичны.
  • Переходим по пути /META-INF/com/google/android и теперь открываем для сверки файлы под названием updater-script. Если они не идентичны, то корректировать их необходимо так, чтобы в BROM`е совпадало значение, которое указано в портируемом ROM`е.

Примечание. Вы можете редактировать или добавлять такие параметры, как ядро или permissions, asserts, ui_prints, run_programs, но ни в коем случае не меняйте значение symlinks.

Последнее, что необходимо сделать - проверить в скрипте updater параметр Format values на базовом ROM`е (указанные данные должны подходить для ). Если у двух ядер разные производители, обязательно распакуйте ядро и скопируйте из портируемого ROM`a данные BOOTCLASSPATH на BROM по адресу init.rc.

После всех выполненных действий прошивка окажется в базовом ROM`е, а вы сможете дополнить её по своему усмотрению. Как видите, весь процесс занимает немного времени и не требует особых знаний. Поэтому вы вполне можете справиться с портированием прошивок самостоятельно.

Тема, как портировать прошивку Android, довольно избитая, но не теряет актуальности. Наоборот, всё больше людей начинают ею интересоваться. В этой статье мы рассмотрим только портирование устройств с одинаковыми ядрами. Если вы хотите себе суперинтересную прошивку, то самое время начинать разбираться с «кухней» этого процесса.

Пошаговая инструкция

Что потребуется:

  • компьютер с любой ОС;
  • WinRAR или подобный архиватор;
  • Notepad++;
  • два ROMа: портируемый (далее PROM – из которого будем брать «цацки») и базовый (далее BROM – на котором будем собирать).

*BROM – как правило, родная прошивка.

**Так как здесь будет рассмотрено ARM устройство, сперва нужно узнать, какой у вас процессор.

Действие первое

Cоздайте backup из директории system/app в любую папку на десктопе. Копируя файлы, вы поймёте, в чём дело, ведь если приступили к портированию, значит, наверное, не раз прошивали свой MID.

Действие второе

Удалите приведённые на картинке директории из BROM и, соответственно, вставьте вместо них папки из PROM.

Действие третье

Теперь файлы из первого действия забрасываем обратно в BROM.

Действие четвёртое

Заходим в папку system/lib BROM и копируем с заменой все библиотеки в соответственное хранилище PROM (не удивляйтесь, так проще). То же самое проделываем по путям /system/etc/init.d и /system/etc/permissions. Три вышеуказанные директории теперь можно уничтожить (в BROM), а на их место скопировать всё из PROM.

Важно: откройте файлы build.prop в обеих ROM-ах через Notepad++. Этот усовершенствованный блокнот хорошо показывает табы. Последние должны быть один напротив другого, а запись ro.build.description= должна абсолютно совпадать, иначе прошить устройство у вас не получится вовсе. Если запись не такая, проредактируйте её. То же самое проделайте с updater-script, находящийся по пути META-INFcomgoogleandroid. Естественно, запись должна быть идентична с записью PROMа.

Очень важно: совершенно нельзя менять symlinks. Вы можете изменить или исправить, то ли добавить ui_prints, run_programs, asserts и, конечно, ядро.

Самое важное: в Updater-script BROM Format values должны быть для вашего устройства. Иногда нужно исправить в init.rc BOOTCLASSPATH или просто скопировать его из RBOOT. Потом, естественно, перепаковать ядро.

Ну, всё! Портирование прошивок Android на базе ARM делается так. Удачи!

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

Для портирования понадобятся такие программы, как Notepad++ (или любой другой качественный текстовый редактор), WinRar (или другая программа-архиватор), персональный компьютер (с операционной системой Windows или другой), а также хотя бы базовый уровень познаний в структуре операционной системы Android и здравый смысл (например, нет смысла портировать HDPI-ROM напрямую на MDPI и так далее).

Также потребуются два ROM`а – портируемый и CM7/GB/Stock в качестве базы для создаваемого порта. Вы также должны быть обознаны в том, на основе какой ревизии платформы ARM создан ваш девайс (ARMv5, ARMv6 или ARMv7), так как ROM-основа и ROM-порт обязательно должны быть под один и тот же тип процессора.

По факту, работа проводится с тремя основными папками – портируемым ROM’ом, из которого извлекаем всё необходимое; базовым ROM’ом – то есть, куда производит портирование, и где собираем уже новую версию ROM`а; резервными копиями, создаваемыми по ходу дела.

Для начала, создадим резервную копию из папки базового ROM, а именно файлов, которые находятся в директории /system/app :

stk.apk
vpnservices.apk
camera.apk
bluetooth.apk

Backup можно поместить куда душе угодно, даже на рабочий стол.

Удаляем нижеуказанные папки из базового ROM и заменяем их портируемым:

/data
/system/app
/system/framework
/system/fonts
/system/media

Не забываем скопировать из портируемого ROM в базовый библиотеку libandroid_runtime.so в папку /system/lib , поскольку без неё новый ROM с высокой долей вероятности не запустится вовсе. Впрочем, если при условии замены устройство уходит в циклический ребут, то есть безостановочно и безрезультатно перезагружается – стоит попробовать использовать libandroid_runtime.so из базового ROM’а.

Копируем файлы, резервные копии который создали, в базовый ROM. Далее, копируем все библиотеки и папки, находящиеся в system/lib базового ROM, в соответствующую директорию портируемого. Заменяем все файлы в случае совпадения имен. В базе удаляем директорию lib полностью, перемещаем такую же папку из портируемого в базовый ROM.

Переходим в папку /system/etc базового ROM`а, открываем папку init. d . Копируем всё её содержимое в такую же (/system/etc/init.d ) директорию портируемого ROM`а. После чего удаляем папку в «базе». Копируем init. d в «базу» из «порта», в /system/etc .

Снова открываем директорию /system/etc базового ROM`а, где открываем папку permissions . Копируем всё её содержимое в такую же папку (/system/etc/permissions ) портируемого ROM`а. Опять-таки, удаляем папку permissions в «базе», после чего из портируемого ROM`а копруем permissions в /system/etc базового ROM. Такие незамысловатые действия способны исправить проблемы с permission и gapps до их реального появления.

Открываем при помощи текстового редактора (рекомендуем использовать Notepad++) файл build. prop портируемого ROM и «базы». Размещаем два окна Notepad++ друг возле друга, и правим build. prop портируемого ROM в соответствии с базовым, так, чтобы они совпадали. Очень важно, чтобы параметры:

ro.build.description=
ro.build.fingerprint=

В build. prop портируемого ROM`а были такими же, как в базового, иначе созданная прошивка не будет работать вовсе. Сохраняем build. prop и закрываем Notepad++, после чего копируем Build. prop из портируемого ROM в базовый.

Теперь необходимо подредактировать updater- script . Переходим в папку META- INF com google android базового ROM`а и открываем данный файл при помощи Notepad++. Так же открываем и updater- script и портируемого ROM`а. Располагаем два окошка Notepad++ рядом, и меняем updater- script «базы» для схожести с updater- script «порта». Настоятельно не рекомендуется менять symlinks . Просто нужно исправить или добавить всякие permissions , asserts , ui_ prints , run_ programs и устанавливаемое ядро прошивки. В updater- script «базы» тщательно сверяемся, чтобы Format values были установлены для нужной модели мобильного девайса. Перепроверяем, или выбрали нужное ядро. Если устройство не от того же производителя, от которого взято ядро, то обязательно нужно его распаковать, после чего поправить BOOTCLASSPATH в init. rc . BOOTCLASSPATH из «порта» копируем в базовый ROM, после чего снова упаковываем ядро.

Вот, в принципе, и всё. Финальная прошивка получилась в папке базового ROM. Также в неё можно добавить по вкусу разные приложения, патчи, скрипты и так далее.

Qualcomm Smartphone Software Update Tool - перепрошивальщик для устройств (смартфонов и планшетов) на Android, которые имеют "под капотом" процессор от Qualcomm. Multi-port, к слову, поддерживает до 16 девайсов под одновременной прошивкой. Таким образом, Вы сможете перепрошить до шестнадцати, например, смартфонов сразу! А процесс прошивки каждого из них занимает около четырх минут. Инструкция со всеми подробностями размещена в архиве, либо можете почитать еще чуть ниже. Также в архиве Вы найдете необходимые драйверы для квилкома.


  • Жанр: перепрошивка
  • Платформа: Windows


  • название_файла_прошивки.bin (может быть и.7z) - архив с прошивкой

  • Qualcomm Smartphone Software Update Tool - прошивальщик

  • Uniscope_Qualcomm driver_V1.0.1.zip - драйверы Qualcomm (при установке на 64-битные ОС обязательно отключение проверки цифровой подписи драйверов)

  • Flashing_Procedure_Инструкция для прошивки.pdf - инструкция по прошивке (все логины, пароли от прошивальщика находятся в данной инструкции)


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


Если сделали верно - в диспетчере устройств увидите устройство QHSUSB__BULK со следующими VID и PID: USB\VID_05C6&PID_9008&REV_0000


Нажимаем по нему правой кнопкой мыши и выбираем пункт "Обновить драйверы... ", далее выбираем поиск драйверов на этом компьютере и в качестве пути к драйверам указываем папку Uniscope_Qualcomm driver_V1.0.1, которая у нас получилась при распаковке архива:



Запускаем Qualcomm Smartphone Multi-Port Software Upgrade Tool. В появившемся диалоге нажимаем на восклицательный знак, чтобы имя пользователя Operator у вас изменилось на Administrator и вводим пароль ustest , после чего нажимаем Ok.


В окне программы нажимаем кнопку Load Soft Folder и выбираем папку с прошивкой MMX_Q415_SW_V2.8_HW_V0.2__V25112015B1661_LCS4.bin из распакованного нами архива. Далее в любом из окошек выбираем COM-порт, на котором у нас находится телефон в Download Mode (в моем случае это COM3) и нажимаем кнопку Start. Вот так выглядит окно программы Qualcomm Smartphone Multi-Port Software Upgrade Tool до нажатия кнопки Start:


Пошел процесс прошивки


Успешным признаком ее завершения является появление надписи Download finish! в окне состояния:


Телефон после завершения прошивки должен перезагрузиться автоматически, но не факт