Una de las armas arrojadizas más comunes cuando se habla de Android es la de la fragmentación. Android está maldito porque aún se registra actividad de modelos con Gingerbread o anteriores, Android está maldito porque Jelly Bean domina y KitKat crece pero no lo suficiente. Todo esto viene porque en iOS las cosas funcionan de otra manera, aunque ellos también tienen su parque de terminales sin actualizar. Como quiero hacerte daño, uso argumentos que a día de hoy pertenecen al pasado en la mayoría de casos. Sólo en momentos puntuales sí que influye el que un smartphone o tablet con Android esté actualizado o no así que hoy vengo a hablaros de la importancia relativa de las actualizaciones en Android. De como sí pero en realidad no. De que existe una herramienta maravillosamente desarrollada por Google para salvar este aspecto a nivel funcional y de que mucha gente la desconoce. O decide ignorarla.

La importancia relativa de las actualizaciones en Android

Resulta que en Android existe desde hace ya tiempo una herramienta desarrollada por Google y que se llama Google Play Services. Esta herramienta, imprescindible para la ejecución de múltiples partes del sistema operativo, se actualiza directamente desde Google Play y cumple una función muy importante. Es el paquete de API del sistema que permite la ejecución de aplicaciones avanzadas en todas las versiones de Android compatibles. Es decir, elimina el principal de los defectos de la tan temida fragmentación.

Así, cualquier aplicación desarrollada para Android que eche mano de las API del propio sistema podrá ejecutarse por igual tanto en Android 5.0 Lollipop como en Android 2.3 Gingerbread. Otras funciones sí que dependen de la versión como Google Now, sólo presente de Jelly Bean en adelante. Otras características también se ven afectadas como el modo inmersivo de aplicaciones, sólo desde KitKat, o problemas del desarrollador que no adapte su aplicación para funcionar tanto en Dalvik como en ART, las dos máquinas virtuales que conviven en KitKat y después funcionan de forma independiente hacia atrás y hacia adelante.

Si nos fijamos en las aplicaciones de Google Play veremos que pocas requieren un mínimo de Ice Cream Sandwich aunque la evolución de las mismas es un hecho y el sistema va empujando a los desarrolladores. Tarde o temprano será realmente fundamental que nuestro smartphone o tablet tenga KitKat, por citar un ejemplo, pero por el momento no es así. Así que dejemos de asustarnos cuando alguien hable de la fragmentación porque los problemas que podamos encontrarnos de compatibilidad en Android estarán provocados más por hardware (Android Wear y Bluetooth 4.0 BLE) que por software.

¿Queremos tener la última versión del sistema operativo? Siempre, pero no es ni mucho menos imprescindible. Google ya solucionó eso.

5 comentarios

  1. Gran post, totalmente de acuerdo con tigo. De echo mucha gente echa la culpa de que vaya lento el móvil a que no está actualizado cuando no es así. Evidentenyemente todos nos cansamos de la apariencia de la interface y querremos tener lo último en cuanto a software, pero de ahí a que sea necesario, o que vaya a funcionar mejor un móvil por tener una versión posterior son cosas muy relativas.

    • Gracias, Thor. Lo cierto es que ya cansa que se usen las mismas armas contra Android cuando el 90% de las veces el problema es del propio móvil que o bien está defectuoso o bien tiene muy mal hardware. Se acusa a Google de las actualizaciones en lugar de mirar al propio fabricante y resulta que actualizando no vas a conseguir mucho más. Las aplicaciones van a funcionar igual y sólo vas a tener cambios de apariencia y quizá de velocidad si el salto es a una versión tipo KitKat. Pero si el móvil es malo…

  2. Tienes razón, sin duda. El problema es la sociedad y los fabricantes, unos porque piensan que si se gastan 200 euros en un terminal, una barbaridad para ellos, tienen que tener lo último y durar muchos años. Los fabricantes ya han dejado más que patente que son 2 años de soporte como mucho y arreando, ninguno quiere seguir la estela de Motorola, le es mucho más rentable pasar del tema.

  3. La realidad no es tan de color de rosa. Voy a dar mi punto de vista como desarrollador móvil. Aviso, ladrillo!

    Google Play Services no soluciona el problema de fragmentación (hablando sólo del SO, sin entrar en hardware) para los desarrolladores, incluso puede que lo haga hasta un poco más complicado.

    Me explico:

    Las API del sistema operativo son las que son, por tener Google Play Services tu móvil no se convierte en Lollipop. Sí, puedes usar el último teclado o el último GMail, pero la restricción de qué API puedes usar está en el API level, que va intrínsecamente unido a la versión del SO que uses (21 para Lollipop, 14 para ICS, etc. https://source.android.com/source/build-numbers.html).

    Ese valor, no otro, es el que le pone la primera piedra en el camino al desarrollador. Quieres que tu app se instale el 90% de los terminales? Bueno, pues API level 14 es tu amiga, olvida todo lo añadido después.

    Si quieres usar opciones más avanzadas del SO tienes que trabajar doble, o tripe, desarrollando la misma funcionalidad de manera condicional en función de la versión del SO en la que estás.

    La segunda piedra en el camino es precisamente Google Play Services ya que no puedes asumir que esté instalado, hay muchos terminales que o bien no lo tienen actualizado o directamente ni siquiera pueden hacerlo. Un ejemplo claro de esto son los terminales de Amazon o los terminales guarripeich sin acceso a Google Play.

    Quieres hacer algo tan sencillo como mostrar un mapa? Ups, comprueba si tienes Google Play Services, si la versión es correcta o si necesitas una alternativa. Compras dentro de una app? Puntuaciones en un juego? Más de lo mismo.

    Llegado a cierto punto de estabilidad, un SO es tan bueno como lo son sus aplicaciones. La manera de conseguir que las aplicaciones sean buenas es dando buenas herramientas a los desarrolladores, ya se encargarán ellos de hacer productos increíbles con ellas. Pero si machacas al desarrollador tus productos serán mediocres y la única razón por la que lo permites es por llegar a una cuota de mercado lo más grande posible.

    Fin del ladrillo.

Deja una respuesta