60. ¿En qué afectan las nuevas versiones de Android y iOS al desarrollo?

Tanto Android como iOS son sistemas que se actualizan de forma anual. Cada año tenemos una nueva versión de ambos sistemas operativos. En este episodio vamos a intentar aclarar en qué afectan estas nuevas versiones de Android y iOS al desarrollo de aplicaciones.

¿Por qué se actualizan los sistemas operativos?

Lo primero que debemos entender es por qué se actualizan Android y iOS de forma anual. Básicamente lo hacen para hacer cambios en el diseño, cambios de seguridad, añadir nuevas funcionalidades y, al fin y al cabo, modernizarse y ofrecer una mejor experiencia de usuario.

Para las aplicaciones, y nosotros como desarrolladores, estas actualizaciones ofrecen nuevas oportunidades pero también requieren un esfuerzo a la hora de adaptarse a los nuevos cambios.

Si tienes una aplicación y aparece una nueva versión del sistema ten en cuenta que vas a tener trabajo que hacer. Precisamente es lo que vamos a ver aquí. Vamos a revisar aquellos puntos que debemos tener en cuenta a la hora de adaptar nuestra app a la llegada de una nueva versión del sistema operativo.

1. Revisar aquellas funcionalidades que hayan cambiado

En muchas ocasiones, ciertas funcionalidades que ya existían en versiones anteriores del sistema cambian la forma en la que funcionan.

Si no adaptamos la programación y la implementación de estas funciones en nuestra app podemos correr el riesgo de que no funcionen correctamente, o simplemente dejen de funcionar, para el nuevo sistema.

Como ejemplo tenemos los permisos en Android. En versiones anteriores de Android, concretamente antes de Android 6.0, los permisos que necesitaba una aplicación se solicitaban antes de descargar la aplicación en Google Play.

Antes de descargar la aplicación, desde el propio Google Play, decidías si aceptabas o rechazabas todos los permisos de una sola vez. Si no aceptabas los permisos simplemente no podías descargar la aplicación.

Sin embargo, Google se dio cuenta que quizás esta no era la mejor manera de hacerlo, y a partir de Android 6.0 introdujeron los llamados permisos en tiempo de ejecución. Esto significa que los permisos se solicitarían dentro de la app a medida que esta los fuera necesitando.

Este cambio supuso tener que cambiar la programación de las aplicaciones en la parte de permisos para poder aprovechar esta funcionalidad tan demandada por los usuarios de Android.

2. Analizar las nuevas posibilidades del sistema

Las nuevas versiones del sistema también incorporan nuevas posibilidades que pueden ser aprovechadas por las aplicaciones. Nuevos sensores o servicios que permiten mejorar la experiencia de usuario a las aplicaciones y así diferenciarse de la competencia y hacerse mejores.

Un gran ejemplo de estas posibilidades puede ser el sensor de la huella dactilar y las aplicaciones bancarias.

Las aplicaciones bancarias contienen información muy sensible que tiene que ser protegida cuidadosamente. Esta es la razón principal por la cual este tipo de apps no recuerdan nuestra contraseña de acceso y nos la piden continuamente siempre que la abrimos para consultar cualquier dato.

El sensor de huella dactilar les ofreció la posibilidad de, en vez de introducir la contraseña a mano cada vez que entrábamos, hacerlo simplemente colocando el dedo en el sensor de huellas. Sin duda esto fue un gran cambio y una mejora considerable de la experiencia de usuario. De hecho, la gran mayoría de aplicaciones que requieren este tipo de seguridad utilizan ahora esta función.

3. Cambios de estética

¿Recuerdas que aspecto tenían los sistemas y aplicaciones móviles de hace 5 años? Ni mucho menos la que tienen ahora.

Las nuevas versiones de ambos sistemas tratan de actualizarse y modernizarse visualmente. Uno de los cambios recientes más grandes es Material Design de Google.

Cuando aparecen estas nuevas guías de diseño las aplicaciones tienen que tratar de adaptarse a ellas. En el caso de no hacerlo corren el riesgo de quedarse desfasadas y dar una cierta sensación de dejadez.

Si nuestra app hace mil cosas geniales pero no tiene una buena apariencia, pierde muchísimo. Sería como tener una casa llena de domótica pero con las paredes sin pintar y las ventanas rotas. ¿Quién querría vivir en una casa así?

4. Probar, probar y probar la app en el nuevo sistema

Finalmente, y quizás el punto más importante, debemos probar nuestra app mil y una veces en ese sistema hasta asegurarnos que todo funciona domo debería.

Antes de publicar una nueva versión de la app para soportar esa nueva versión, debemos asegurarnos que nada fallará y la única manera de hacerlo es probarla nosotros mismos.

Muchas veces no bastará simplemente con leer la documentación de los cambios que se han hecho. En ocasiones hay cierto código de programación que no funcionará de la forma esperada en una nueva versión del sistema, especialmente si utilizamos librerías y código de terceros donde tenemos menos control.

Conclusión

Así que en resumen, las nuevas versiones de Android y iOS sí que afectan al desarrollo de aplicaciones como es obvio.

Cada vez que aparezca una nueva versión del sistema tendríamos que ver qué funcionalidades que estemos usando han cambiado, ver las nuevas posibilidades que tenemos y podemos implementar, adaptarnos a la nueva estética del sistema si es necesario y finalmente probar y probar nuestra app en esa versión hasta asegurarnos que todo está bien antes de publicar.

Si no hacemos todas estas cosas corremos el riesgo de que nuestra app deje de funcionar, se quede atrasada y desfasada.

Como siempre sabes que puedes seguir y recomendar este podcast a través de iOS y Android. Además tienes mi formulario de contacto por si quieres contactar conmigo para cualquier duda o sugerencia. ¡Nos escuchamos el miércoles que viene a las 8AM!