Android y la fragmentación
Ya os hemos contado que Google tiene la intención de abrir una tienda “on-line” de aplicaciones para el sistema operativo Android. El sistema Android para teléfonos y dispositivos móviles se publicará bajo licencia de código abierto Apache, por lo que cualquiera puede modificar el código y adaptarlo a sus necesidades.
Sobre mi mesa hay dos móviles con la misma versión del sistema Symbian y del mismo fabricante. Uno dispone de teclado “qwerty” y no tiene cámara, el otro usa un teclado normal de móvil, dispone de cámara y tiene diferente resolución de pantalla. La empresa Symbian, cuando vende una licencia a un fabricante para que haga un nuevo teléfono, le obliga a que mande un equipo de técnicos a sus oficinas para controlar como se implementa el sistema operativo. Las aplicaciones Symbian tienen que ir firmadas, se comprueba de esta forma que es lo que realmente hacen y su compatibilidad. Aun así, hay aplicaciones que van correctamente en uno de mis móviles y no en el otro. ¿Como controlará Google si los programas de Android funcionarán en un teléfono o no?
Según el jefe de proyecto Andy Rubin, Android contará con una tecnología que comprobará que APIs se han implementado en un modelo concreto, un “script” que se ejecuta y nos dice que APIs hay en el terminal. Para un programador, esta no es una solución muy apetecible. Al crear un programa se necesitan saber las APIs del dispositivo para conocer sus capacidades concretas y ha de poder hacerse durante la ejecución, por si se actualiza el software del teléfono. Además, saber que una API no está presente solo nos sirve si creamos un programa que contemple todas las posibilidades en cuanto a capacidades presentes o ausentes.
Aunque todos los fabricantes adoptasen un mínimo de APIs de Android, eso no asegura la compatibilidad entre los móviles Android. Existen unos test de compatibilidad de Sun para comprobar las APIs de Java, las JSR. Consisten en miles de tests muy detallados que comprueban la compatibilidad de la máquina virtual de Java (JVM) en un móvil concreto. Aún así, un programa en Java puede no funcionar en un móvil a pesar de que tenga la misma JVM, según los tests, que otro móvil en que se ejecuta correctamente. Los motivos son que a pesar de los miles de pruebas pueden seguir quedando errores no detectados, que la implementación sea suficiente para los tests pero no completa, o por el propio hardware del dispositivo.
Android permite que el fabricante implemente o no una API, incluso que la modifique a su gusto. Si los programadores no saben si sus creaciones van a funcionar en todos los modelos tendremos la tan temida fragmentación, que ha impedido un mayor éxito de Java en los móviles. Al día de hoy el problema no existe, se programa para un solo emulador y todo funciona de maravilla. Pero cuando empiecen a aparecer terminales con Android, lo mejor que podría pasar es que uno o dos móviles se convirtiesen en superventas y marcasen la pauta para el resto de fabricantes. En caso contrario, mas vale que nos vayamos olvidando de la compatibilidad de los androides.
Vía | Simon Judge
Mas información | The Register
Comentarios
Deja tu comentarioEscribir un comentario
Nos encantaría conocer tu opinión. Por favor, procura que tus comentarios estén relacionados con esta entrada. Intenta también no insultar ni usar palabrotas, respeta a los demás lectores de este blog. Los comentarios off-topic, burdamente promocionales, ofensivos o ilegales serán borrados sin piedad.
Puedes usar algo de HTML:
<a href>, <strong>, <blockquote>, <br />, <p>, <em>, <ul>, <li>. Los párrafos y los retornos de línea también se incluyen automáticamente.
- Suscríbete via feed RSS a los comentarios de este post
Este blog utiliza OpenId para la identificación de usuarios. OpenId es un sistema que te permite, con un sólo registro, identificarte en todos aquellas webs que lo soporten. Para la identificación se utiliza la url proporcionada por el servidor OpenId cuando te registras en él o la url de tu blog si lo has reclamado.
Si deseas una cuenta OpenId, puedes registrarte en el servidor OpenId de WeblogsSL.
Ejemplos de OpenID
- Openid.blogs.es: http://openid.blogs.es/usuario o usuario
- myOpenID: http://usuario.myopenid.com/
WSL Weblogs SL
Tecnología
Entretenimiento
Motor y deportes
Economía
WSL Empresas
Top 10
Lo+leído
- Nokia 6220 classic, análisis - primera parte
- Móviles con permanencia ¿si o no?
- Un fallo de fabricación en el iPhone 3G podría obligar a Apple a una reparación masiva
- Android 0.9, nueva versión del SDK
- Comparativa: el iPhone del anuncio y uno real
- Nokia mejora la calculadora de los S60
- Características de la nueva ROM del Samsung Omnia en vídeo
- Nokia Chat para S60 3.0 y fring para 9.3
- Internet en el móvil ¿cuánto cuesta realmente?
- Eroski móvil vuelve a quitar el establecimiento de llamada para siempre
Lo+votado
Lo+leído
- Simyo lanza su tarifa plana de internet
- Android caminará solo
- HTC ofrece las ROMs de sus teléfonos
- Sony Ericsson Xperia X1 para octubre
- Klaxon, despertador avanzado para Windows Mobile
- Firefox Mobile para Nokia N8xx
- Comparativa: el iPhone del anuncio y uno real
- Android 0.9, nueva versión del SDK
- Pantallas 3D para móviles
- Internet en el móvil ¿cuánto cuesta realmente?
Lo+comentado
- Características de la nueva ROM del Samsung Omnia en vídeo
- Móviles con permanencia ¿si o no?
- Un millón de HTC Touch Diamond vendidos
- Movistar: mensajes multimedia gratis en agosto y septiembre
- Comparativa: el iPhone del anuncio y uno real
- Primeras imágenes del navegador del Nokia 5800
- Android caminará solo
- Sony Ericsson T700
- Simyo lanza su tarifa plana de internet
- El Gobierno actuará contra el spam de las operadoras
Autores / Comentaristas
Comentaristas
- cacon

- Rafael Galindo

- Fle

- David D.N.

- akarakan

- Capullo

- Yevon

- Richard

- perico rl

- Fransexy

Secciones
General
- Accesorios
- Aplicaciones
- Conectividad
- Desarrollo
- Futuro
- Imagen de la semana
- Mercado
- Multimedia
- Móvil y sociedad
- Promociones
- Revisión
- Seguridad
- Servicios
- Sistemas operativos
- TV Móvil
- Varios
- XatakaMovil
Marcas
- Alcatel
- Apple
- BenQ
- Blackberry
- HTC
- LG
- Motorola
- Nec
- Nokia
- Otras
- Samsung
- Sharp
- Siemens
- SonyEricsson
- Toshiba





La verdad es que no se como se lo montaran para que funcione en condiciones. Hasta la fecha lo mejor en este aspecto ha sido windows mobile, con bastantes aplicaciones y una compatibilidad bastante decente.
Symbian tambien tiene muchisimas, pero mi experiencia es que no son demasiado estables.
Y java es sencillamente tristisimo (excepto opera mini y algun juego simplon pero adictivo).
En este aspecto creo que apple es la que tiene la formula ganadora: Una sola plataforma, un SDK completo, un test previo a los programas y una sola tienda para poder conseguir los programas.
Apple lo tiene fácil porque sólo hay un terminal. El caso de Java es completamente opuesto, casi todos los terminales aun siendo diferentes, tienen máquina virtual. Solución, o utilizas un conjunto muy limitado de la JVM soportado o bien una lista de terminales compatibles.
muy interesante Oscar, no conocía en detalle este concepto