LINUX.ORG.RU

Какие навыки нужно иметь, чтобы портировать Android под своё устройство?

 


0

3

Возьмём в пример тот же XDA-Devs: хренова туча тредов от каких-то индусов, собирающих ROM-ы под устройства, официально не поддерживающиеся ни в одной из более-менее популярных прошивок типа Lineage. Как они это делают?

По обилию таких мастеров можно судить, что собрать ведро под любое конкретно взятое устройство - задача, посильная одному человеку, разбирающемуся в теме. Я так тоже хочу, но я не разбираюсь, а всё, что выдаёт гугл, когда пытаешься разобраться - советы уровня «это сложно, пользуйся готовым». В какую сторону вообще двигаться? Задача ближе к установке генты или к разработке ядра?


собрать ведро под любое конкретно взятое устройство - задача, посильная одному человеку, разбирающемуся в теме

Звучит как «собрать gcc под pupkinarchtiecture - задача, посильная одному человеку, разбирающемуся в теме». У тебя либо есть, где взять gcc c поддержкой pupkinarchtiecture, либо нет. Дальше либо задача, посильная половине человека, разбирающегося в теме, либо дел на полгода с юристами и программистами.

t184256 ★★★★★
()

Большая часть таких сборок сводится к использованию ядра от производителя, так что никакого космоса нет.
Самая частые проблемы - наличие сорцов ведра от производителя(мерзкие производители могут плевать на gpl) и наличие разлоченного бутлоадера.
Для начала можешь потыкать в AOSP и посмотреть чем отличаются сборки под разные девайсы, как правило это патчсеты, device tree и т.д.

Deleted
()

Я так тоже хочу, но я не разбираюсь

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

micronekodesu ★★★
()

Смотря что за девайс. А так, куча гайдов на том же 4пда по портированию. Легче всего с этим у MTK чипов.

karton1 ★★★★★
()
Ответ на: комментарий от karton1

Потому что индусы могут, а я нет. Обидно как-то. Да и вообще что за дела, почему на десктоп я могу собрать систему из исходников, а на мобилу - нет?

tsmx
() автор топика
Ответ на: комментарий от micronekodesu

Особо далеко от стоковой прошивки ты не уйдешь

По твоему, LineageOS примерно тоже самое, что и условный сток?

xdimquax ★★★★
()
Ответ на: комментарий от karton1

Смотря какая степень упоротости сумрачного гения. Может собрать и вундервафлю не имеющую аналогов.

burato ★★★★★
()
Ответ на: комментарий от burato

С автоматической наводкой на нужные объекты, да. Я к тому что процесс ради процесса это точно не в эту сторону, возиться с прошивками и клепать 1001 васянскую прошивку это нечто. Сколько я видел аппаратов у которых куча кастомов и ни одного завершенного до конца, в каждом какие то проблемы.

karton1 ★★★★★
()
Ответ на: комментарий от xdimquax

Та же ОС на базе ведроида с проприетарщиной от производителя и нескучными обоями, никакой принципиальной разницы. То что там удалены гугловые сервисы - это и в обычно прошивке можно сделать.

micronekodesu ★★★
()

Готов присоединиться к твоей задаче

vitg8
()

отличная идея на лето пара месяцев еще есть, как разберешься в hardware краткий туториал закинь, пригодиться!

если нужно будет попинать из за лени то пиши попинаем)))

anonymous2 ★★★★★
()
Последнее исправление: anonymous2 (всего исправлений: 1)

Сделать свою быструю сборку андроида просто - пару деньков портатить на накатывание андроидных патчей (на ядро) на твою железку. Там должен уже работать Linux и вся периферия в нём. Потом собрать дефолтный AOSP под твою архитектуру и что-то да загрузится... Потом долго и нудно правишь конфиги и пишешь hal'ы. Самых трудных 2 - camera hal и graphics hal. Читаем доки, смотрим готовые реализации, копи-пастим. Где-то за месяц взлетит. Потом впиливаем audio hal - если есть работающая alsa, можно найти готовый под нее, только имена контролов надо будет прописать. А потом чиним глюки. Как самого андроида, так и всего остального. Это если одному делать - может занять годы. Я считаю что за 3 месяца на железо с работающим Linux можно поднять для себя андроид с вменяемым качеством. Я не рассамтриваю здесь варианта с отсутствием андроидных дров под что-то типа видеокарты - с одним этим можно протрахаться как несколько месяцев так и несколько лет в зависимости от того, насколько всё плохо. Graphics hal лучше искать готовый от вендора железа или похожий (под свой чип и свою версию андроида, ну и чтобы архитектура процессора была та же или совместимая), чтобы были исходники ядреной части и не было ничего странного. Такое можно прикрутить не шибко запариваясь.

Короче, навыки кернел хакера и знание обычного линукса будут очень нужны.

slapin ★★★★★
()

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

Quasar ★★★★★
()

Как вариант, можно начать с прочтения книги Embedded Android, автор Karim Yaghmour. Чтение документации на официальном сайте AOSP также имеет смысл.

anonymous
()
Ответ на: комментарий от karton1

Легче всего с этим у MTK чипов

Наркоман что-ли? MTK в прошивках — самое донное днище. Говорю как обладатель МТК-обмылка. На Qualcomm НАМНОГО лучше.

anonymous
()
Ответ на: комментарий от karton1

которых куча кастомов и ни одного завершенного до конца, в каждом какие то проблемы

Прям десктопный линукс

anonymous
()
Ответ на: комментарий от anonymous

Чего наркоман? Если чипы одинаковые у телефонов то можно тупо без всего совместить их прошивки и вуаля, вот тебе и чистый андроид или оболочка какая. Гайды посмотри на 4пда.

karton1 ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.