La presencia de Android en el mercado de Smartphone/Tablets ya es indiscutible, y todo indica que va a estar con nosotros por un buen rato, incluso sigue creciendo en base de dispositivos instalados. Por tales motivos cada dia surgen preguntas de como instalar Android en dispositivos distintos donde originalmente no vino instalado Android, por ejemplo:
Como instalar Android en un Blackberry?
Como instalar Android en un HTC con Windows?
Como instalar Android en un HTC con iPhone 3G?
Esta situacion crece con los lanzamientos de nuevas versiones de Android que animan a disfrutan de las novedades en funciones y facilidad de uso, por tal motivo debemos aclarar ciertas cosas que deben tener en cuenta antes de tomar la decision de intentar instalar Android en un dispositivo que originalmente viene con un sistema operativo distinto como Windows Phone, Mobile, iOS, Symbian, Palm, Blackberry. etc.
Aunque este tema es bastante complicado, y mas alla de mis opiniones estan las apreciaciones de los desarrolladores oficiales, pero vamos a dar solo algunas pautas genericas y logicas, ya que pueden surgir algunos mitos infundados sobre esta migracion hacia este sistema operativo. En muchas webs afirman la teoria de que Android puede ser instalado en cualquier dispositivo que cumpla lo requisitos basicos de Marca/Tipo/ de Componente de Hardware, ademas Android puede personalizarse al maximo para acoplar las caracteristicas, debido a que Android es Open Source.
De aca podemos extraer varias cosas:
Mientras Android sea Open Source podemos realizar cualquier cantidad de cambios en el codigo fuente para adaptarlo a distintos dispositivos, aunque no es tan facil como se escucha ya que se requiere de altos conocimientos del hardware y programacion.
No puedes ejecutar Android en un dispositivo donde los componentes de hardware no sean compatibles y entes reconocidos por el sistema base de Android para hacer uso de ellos. Es decir, uno de los principales problemas para instalar Android en un dispositivo son los Drivers. El mismo problema lo teniamos hace un tiempo en el mercado de Pcs de Escritorio con Linux, donde la falta de drivers para los componentes impedia que puedas utilizarlos (Impresoras/USB/WiFi/etc), claro es fue poco a poco solventandose en la medida que se lanzaban nuevas versiones del Kernel Linux, pero aun asi, a la fecha existen muchos fabricantes que se niegan bajo cualquier motivo a desarrollar drivers para Linux. Esto ha obligado a los desarrolladores a ejercer medidas de Ingenieria Inversa, al mas puro estilo hacking para lograr la utilizacion del hardware con un driver No oficial y Open Source. Esta tarea puede tardar bastante para llegar a un driver completamente estable.
Misma situacion ocurre con Android, que es un sistema operativo completamente distinto a otras plataformas, esta diferencia es equivalente a la diferencia entre Windows 7, Linux, OSX. donde auque muchos todavia no lo saben, los driver para Windows 7 no funcionan en OSX o en Linux, y viceversa. En muchos casos existe hardware compatible solo para alguno de estos sistemas operativos. Y no solo eso, esto ocurre tambien con el Software, donde las aplicaciones solo pueden ejecutarse en un Sistema Operativo donde fue compilado. Claro esta, las aplicaciones mas populares con compiladas por los fabricantes en la mayor cantidad de plataformas posibles, anque no siempre es asi.
En resumen, los drivers para iOS, Windows Phone, Symbian, Palm, etc no van a funcionar para Android, y en caso de que la arquectura base de Android ( Kernel Linux ) no soporte ese componente entonces debes tomar el reto de programar de lo lindo donde posiblemente se incluya Ingenieria Inversa, ya que las especificaciones de hardware estan patentadas comercialmente por el fabricante.
Pero no todo son lagrimas si te equivocaste al momento de realizar tu compra de un dispositivo sin Android, y tambien para los geek audaces exiten ya proyectos en camino, en fase beta la mayoria obviamente, emprendidos por programadores expertos y seleccionando una marca y modelo especifico de equipo a migrar. Estos proyectos llevan comunmente el nombre de Android ROM. Que es un Android ROM, pues bien, es una imagen del sistema operativo Android modificada, bien sea habilitando o deshabilitando funciones originales, mejorando las existentes o en casos mas complicados con porciones de codigo agregados para nuevas funcionalidades.