Publicado el

Cómo nos afecta la fragmentación en Android

fragmentation_android
El Problema de Android

Uno de los temas más críticos y de los asuntos a tratar por Google en cuanto a Android es el tema de la fragmentación del sistema operativo. En este artículo miraremos de forma sencilla qué es y cómo nos afecta la fragmentación en Android.

Por su definición general, la fragmentación es el proceso de separar en pequeñas partes. En cuanto hace a Android estamos hablando de ocho diferentes versiones del sistema operativo que están funcionando en diferentes equipos. Para que esto suceda se requiere que dichos equipos no hagan la transición hacia nuevas versiones y queden rezagados pero funcionando.

Según el gráfico a continuación podemos ver como Marshmellow (Android 6.0) es la versión más extendida con 28%, seguida de Nougat (7.0) con un 22% pero es preocupante que ninguna versión alcanza cifras significativas.

Android_versions_distribution
Distribución de versiones de Android, fuente: Google

El caso iOS

Android vs iOS fragmentation
iOS vs Android

Si comparamos en la gráfica con el ecosistema de Apple con iOS, podría llevar a engaño ya que este se encarga tanto del hardware como del software lo que le permite controlar completamente el ciclo de actualizaciones con un porcentaje mayor al 60% de dispositivos con versiones recientes.

Para que la comparación sea justa deberíamos tener en cuenta sólo los dispositivos lanzados por Google, como los Nexus o los Pixel. Aunque este caso deja mejor parado a Google por su buen hacer en actualizar sus modelos, es ínfimo comparado con el universo de móviles Android. Sin embargo, esto nos permite reconocer que el peso de la situación no recae tanto en el ciclo de actualización como en la labor de los fabricantes.

¿Cómo llegamos hasta aquí?

Para entender esta problemática es mejor conocer el proceso de desarrollo de Android:

Ciclo de desarrollo Android
Ciclo de desarrollo de Android, fuente: Google

Como vemos en el gráfico, cada vez que Google termina una nueva versión de Android, se envía a los fabricantes de procesadores (Qualcom, Samsung, Mediatek, etc.) para que fabriquen sus drivers correspondientes. Luego pasa a los fabricantes (Samsung, Huawei, Xiaomi, etc.) para que añadan su capa de personalización y finalmente a los operadores para que se apruebe la actualización y por último la recibe el usuario.

Aunque las capas de personalización no siempre son bienvenidas sobre la opción de un Android puro, tienen una gran importancia para las empresas ya que en última instancia es donde se puede imprimir el mayor sello distintivo y único de cada marca, lo cual es clave para posicionar y mercadear el Producto. Si todos los teléfonos tuvieran el mismo sistema operativo (o por lo menos se vea igual) el cliente no tendría un punto diferenciador. Es así como cada marca tiene su propio reproductor de música, app de cámara, explorador de archivos, o funciones especiales como gestos en pantalla, etc.

Teniendo en cuenta la naturaleza de código abierto de Android, cada fabricante usa el código fuente para agregar sus apps, personalizaciones y más, lo cual toma a algunos más tiempo que a otros. El hecho que cada vez el código deba reescribirse para cada dispositivo desde el comienzo por el fabricante de chips y luego la marca de smartphones, alarga considerablemente el tiempo de desarrollo y esto unido a la carrera por sacar nuevos dispositivos, hacen que las empresas prioricen algunas líneas de productos sobre otros.

Cómo nos afecta a los usuarios

Hasta hace algún tiempo yo pensaba que sólo era un problema para los fabricantes y para Google y que en general no tendría mayores implicaciones para el usuario. Hasta que un día se me ocurrió compartir el álbum de las vacaciones con mi esposa en la app de Google Fotos, para que ella y yo tuviéramos disponibles toda la colección al mismo tiempo. Ahí me di cuenta de la triste verdad, si no se actualiza el sistema te pierdes mucho, ella con Kitkat y yo en Oreo.

Las nuevas prestaciones

Android no sólo incluye algunos añadidos interesantes con cada versión, sino que se optimiza en cuanto a velocidad, consumo de batería y usabilidad. Así que sin actualizar, las cosas se pueden volver más complicadas…

No compatibilidad

Como en el caso de Google Fotos, existen apps que permiten interacción entre dispositivos, pero si no están dentro de los límites de actualización su funcionalidad se verá limitada o incluso comprometida. Apps para intercambio de archivos (Shareit, Xender) o para control remoto (TeamViewer) o compartir pantalla (Miracast) son unos cuantos ejemplos…

Otro ejemplo (esta vez de hardware) es el de dispositivos inteligentes que se comunican con el móvil como smartwatch o smartbands que requieren algunas versiones para poder funcionar.

Seguridad

Día a día aparecen nuevas amenazas a los sistemas operativos en general y Android no es ajeno. Es el sistema operativo móvil más usado del mundo lo que lo hace una presa apetecible para el malware y robo de información privada. Es virtualmente imposible que Google siga dando soporte de actualización de seguridad para versiones de hace 5 años.

Bugs y errores de programación

Todo software es susceptible de tener errores y un sistema operativo tiene casi infinitas líneas de código, así que cada versión trata de corregir los errores de la anterior y si no hay actualizaciones, estos errores seguirán ahí para lastrar el desempeño del móvil.

¿Project Treble, es la solución?

En palabras de Iliyan Malchev, líder de Project Treble: «Una cosa que escuchamos siempre de nuestros socios fabricantes que actualizar dispositivos existentes a una nueva versión es increíblemente costoso y demorado» además añade, «la esencia del concepto de Treble es separar la implementación específica del dispositivo/fabricante, y el software de bajo nivel escrito por los fabricantes de chips del entorno de trabajo del sistema operativo Android».

Antes y después de treble
La diferencia de Project Treble, fuente : Google

En el gráfico podemos ver como Google ha diseñado el Project Treble que básicamente consiste en modulizar el sistema operativo para que los fabricantes puedan separar el sistema de su capa de personalización y lo que puede llevar cinco meses se reduzca a un par de semanas.

Lo negativo de esta solución es que solo está disponible para dispositivos que llegan con Android Oreo de fábrica, así que mientras vamos cambiando a equipos nuevos, el problema continuará por unos años más. Si tu móvil se actualiza a Android Oreo o posterior, el fabricante no está obligado a implementar Treble en él, sólo si es un dispositivo nuevo.

Adicionalmente se requiere del compromiso y dedicación de los fabricantes, que aunque ahora lo tienen más fácil, seguirán sopesando su beneficio en la actualización como un servicio post-venta costoso.

Ecosistema Android
El Ecosistema Android, se requiere del compromiso de todos

¿Está funcionando?

Si Treble se aplica en Oreo, los efectos los veremos en Android P, por lo que en el año largo que lleva Oreo podemos decir que la situación no ha cambiado mucho. Sony y Nokia dando el ejemplo, pero en general Oreo llega primero a los «flagships» y de ahí a las demás gamas. También está el caso de OnePlus o Esential que han podido actualizar gracias a que cuentan con un catálogo reducido en contraste con Xiaomi que tiene una línea casi infinita de productos.

Es así como podemos decir que veremos avances con la aparición de Android P con un mejor ritmo de actualizaciones, pero mientras Android sea un sistema abierto y Google no tenga control absoluto, es de esperar que la fragmentación no desaparezca del todo.

Cuéntanos qué opinas sobre la fragmentación y si eres uno de los afectados.

Si tienes Telegram y no te quieres perder ninguna de nuestras noticias, únete a nuestro
canal para estar al día en todo momento: Newdroy.com