Cuando dice que Android es de código abierto, quiere decir que cualquiera puede usarlo sin dar regalías al propietario.
En este caso el propietario es Google. Lo que Google hace es lanzar códigos fuente de Android para que los desarrolladores lo creen desde cero. Como individuo, debe tener un gran conocimiento de lenguajes de programación como python y C. Para la interfaz de usuario, necesita Java.
Los fabricantes emplean un equipo de desarrollo de software para esto. El equipo con el código fuente trabaja desde cero para construir el sistema operativo. Después de eso, se realizan ajustes y personalizaciones específicas del fabricante.
- Si usa un teléfono Android, ¿qué odia o ama de la aplicación de correo electrónico que usa?
- ¿Es posible hacer que un dispositivo Android crea que está conectado por USB a una máquina virtual que se ejecuta en un dispositivo de bucle dentro del entorno Android?
- ¿Cuáles son algunos hechos menos conocidos sobre Micromax?
- Cómo ocultar aplicaciones en un teléfono Android sin rootear en ninguna versión de tu Android
- ¿Los iPhone son caros y sobrevalorados en comparación con los dispositivos Android de gama alta?
Esto es muy sofisticado y prolongado, la razón por la que los fabricantes tardan tanto en lanzar las actualizaciones de Android para cada producto.
Si solo está interesado en una breve descripción, esta respuesta puede ser suficiente, pero si le interesa mucho, le sugiero que lea el siguiente enlace para conocer cada paso involucrado en el desarrollo de Android rom.
Comenzando: Construyendo Android desde la Fuente – XDA-University
Espero que la respuesta ayude.