Написание собственной ОС Android
Я надеюсь, что это правильное место, чтобы спросить это.
Я хотел бы работать над сборкой Android с полностью настраиваемой ОС. Я был вдохновлен этим проектом, который портировал Inferno на Android.
Я хотел бы сделать это на законных основаниях (соблюдая все условия обслуживания и что-то еще), если это возможно, и у меня нет проблем с раскрытием моего исходного кода перевозчику.
Кто-нибудь из вас имеет опыт с этим? Каковы соображения для получения пользовательской сборки для работы с носителем?
Поскольку я строю на Android, мне, вероятно, не придется беспокоиться об аппаратных драйверах cell/3g/4g, и я все равно хотел бы купить телефон у оператора, просто чтобы убедиться, что он будет поддерживаться.
2 ответа
Перейдите к источнику AOSP и клонируйте его. Удалите то, что вам не нужно в вашей ветке и начните исправление ядра! Вам нужно будет модифицировать ядро порциями, чтобы сделать его совместимым (справедливо) с устройством, на котором вы работаете. Ядро Android на самом деле является очень близким родственником ядра Linux, а в Linux 3.3 они начали объединять их. После этого напишите свои механизмы взаимодействия (будь то дисплей, веб-интерфейс и т. Д.), И вы сможете протестировать их на своей платформе.
Я один из создателей проекта Inferno, который вы упомянули. В любом случае, сделать полностью кастомную ОС для телефона Android будет сложно; большая часть оборудования будет недокументирована или доступна только для двоичных двоичных объектов Linux. То, что мы сделали (и то, что Boeing также недавно сделал для коммерческого проекта) - это убрать всю Java из системы Android, оставив базовый Linux, на котором вы можете создать свой собственный пользовательский интерфейс. Это позволяет вам использовать все оборудование (так как драйверы находятся в Linux), но все, что увидят конечные пользователи, будет вашим материалом. Есть множество способов пойти оттуда. Inferno реализует виртуальную машину, поэтому мы можем абстрагировать Linux в наш собственный мир в стиле Inferno.
Я не думаю, что должны быть какие-либо проблемы с перевозчиками. Мы начали с CyanogenMod ROM и взломали его; кастомные диски просто отлично! У меня никогда не было проблем, даже когда я обменивал свою маленькую платную SIM-карту на несколько телефонов с Gingerbread, ICS и Inferno.