Написание собственной ОС Android - PullRequest
0 голосов
/ 03 апреля 2012

Я надеюсь, что это правильное место, чтобы спросить это.

Я бы хотел работать над сборкой Android с полностью настраиваемой ОС. Я был вдохновлен этим проектом , который портировал Inferno на Android.

Я хотел бы сделать это на законных основаниях (соблюдая все условия обслуживания и что-то еще), если это возможно, и у меня нет проблем с раскрытием моего исходного кода перевозчику.

Кто-нибудь из вас имеет опыт с этим? Каковы соображения для получения пользовательской сборки для работы с носителем?

Поскольку я строю на Android, мне, вероятно, не придется беспокоиться об аппаратных драйверах cell / 3g / 4g, и я все равно хотел бы купить телефон у оператора, просто чтобы убедиться, что он будет поддерживаться.

Ответы [ 2 ]

1 голос
/ 20 июня 2012

Я один из создателей проекта Inferno, который вы упомянули. В любом случае, создание полностью кастомной ОС для телефона Android будет затруднено; большая часть оборудования будет недокументирована или доступна только для двоичных двоичных объектов Linux. То, что мы сделали (и то, что Boeing также недавно сделал для коммерческого проекта) - это убрать всю Java из системы Android, оставив базовый Linux, на котором вы можете создать свой собственный пользовательский интерфейс. Это позволяет вам использовать все оборудование (поскольку драйверы в Linux), но все, что увидят конечные пользователи, будет вашим материалом. Есть множество способов пойти оттуда. Inferno реализует виртуальную машину, поэтому мы можем абстрагировать Linux в наш собственный мир в стиле Inferno.

Я не думаю, что должны быть какие-то проблемы с перевозчиками. Мы начали с CyanogenMod ROM и взломали его; кастомные диски просто отлично! У меня никогда не было проблем, даже когда я обменивал свою маленькую платную SIM-карту на несколько телефонов с Gingerbread, ICS и Inferno.

1 голос
/ 03 апреля 2012

Перейдите к источнику AOSP и клонируйте его.Удалите то, что вам не нужно в вашей ветке и начните исправление ядра!Вам нужно будет модифицировать ядро ​​порциями, чтобы сделать его совместимым (справедливо) с устройством, на котором вы работаете.Ядро Android на самом деле является очень близким родственником ядра Linux, а в Linux 3.3 они начали объединять их.После этого напишите свои механизмы взаимодействия (будь то дисплей, веб-интерфейс и т. Д.), И вы сможете протестировать их на своей платформе.

...