¡Acceso ilimitado 24/7 a todos nuestros libros y vídeos! Descubra la Biblioteca Online ENI. Pulse aquí
¡Acceso ilimitado 24/7 a todos nuestros libros y vídeos! Descubra la Biblioteca Online ENI. Pulse aquí
  1. Libros
  2. Desarrolle una aplicación Android
  3. Android 8 Oreo
Extrait - Desarrolle una aplicación Android Programación en Java con Android Studio
Extractos del libro
Desarrolle una aplicación Android Programación en Java con Android Studio
2 opiniones
Volver a la página de compra del libro

Android 8 Oreo

Introducción

Durante el verano de 2017, Google ha publicado, tras varias versiones calificadas como «Developper Preview», la versión final de la última actualización del sistema Android. Como cada nueva versión, Android 8 Oreo (API 26) aporta su conjunto de nuevas funcionalidades, de modificaciones y de cambios de comportamiento.

Este periodo es importante para el desarrollador que se encarga de mantener una o varias aplicaciones: debe asegurarse de que cada aplicación es compatible con los cambios en el comportamiento del sistema y, si es posible, integrar las principales novedades.

Integrar una nueva versión de Android

Lo primero que hay que hacer para gestionar una nueva versión de Android es, evidentemente, comprobar el nuevo sistema en un conjunto de dispositivos Android.

Si bien ciertos fabricantes aprovechan lo antes posible las actualizaciones del sistema (esta era, en particular, la razón de ser de la gama Nexus editada por Google), pasan tan solo unos pocos meses entre la publicación de una nueva versión de Android y las versiones efectivas para cada smartphone o tableta.

Si bien esto da, de hecho, cierto tiempo a los desarrolladores para actualizar sus aplicaciones, hay que disponer no obstante de un dispositivo sobre el que instalar las actualizaciones.

El emulador de Android es, en esta sección, una preciada ayuda que permite probar todo en profundidad. Gracias a él, se evita tener que monopolizar un terminal con una versión del sistema que puede ser inestable; esto ocurría, particularmente, con las versiones «Developper Preview», que tienen una estabilidad relativa.

La creación de una emulación del sistema se ha abordado en el capítulo Principios básicos de Android. He aquí las etapas, resumidas:

 Abra Android Studio y, a continuación, el administrador AVD Manager.

 Haga clic en el botón Create Virtual Device para abrir el asistente de creación de un terminal virtual.

 Seleccione un modelo de smartphone...

Migrar la aplicación LocDVD

1. Detectar las modificaciones que se han de realizar

En el marco de la aplicación LocDVD, parece que la gestión de las notificaciones forma parte de las modificaciones que habría que comprobar en un terminal que funcione con Android Oreo.

La primera etapa consiste, por tanto, en lanzar la ejecución de la aplicación en un terminal (aquí virtual) equipado con Android 8, sin tener que cambiar nada al principio.

 Si no lo hubiera hecho aún, arranque el terminal virtual con Android 8 definido anteriormente.

 Abra la aplicación LocDVD y lance su ejecución en el terminal virtual.

 Compruebe el comportamiento global de la aplicación y, en la pantalla de visualización de un DVD, haga clic en el botón que permite crear una notificación.

La notificación aparece inmediatamente en la barra de notificaciones del terminal emulado: ¡las notificaciones, sin haber realizado ninguna modificación, funcionan correctamente en Android 8!

Esta manipulación ilustra el principio general de compatibilidad ascendente, principio que prevalece, generalmente, en el entorno Android. Cabe destacar, no obstante, que no siempre ocurre así, en particular si se debe a alguna evolución de la plataforma relacionada con la seguridad. El mecanismo de permisos introducido con Android Marshmallow, por ejemplo, requiere una intervención inmediata; el antiguo sistema de permisos no era suficiente para los dispositivos equipados con Marshmallow.

Una vez hecha esta primera verificación, ahora hay que comprobar el comportamiento de la aplicación cuando se ejecuta explícitamente en Android 8.

 Edite el archivo build.gradle de la aplicación LocDVD en Android Studio. 

 Indique, en el archivo build.gradle, que la versión de destino es Android 8, es decir la API de nivel 26. Hay que indicar este número de API para las siguientes propiedades: compileSdkVersion y targetSdkVersion.

 También hay que cambiar el valor de buildToolsVersion por 26.0.0, así como la versión de la biblioteca de soporte v7 utilizada; aquí se usa la versión 26.0.0.

Una vez sincronizada la aplicación con las modificaciones del archivo build.gradle, Android Studio muestra un error: no es capaz de encontrar la versión 26.0.0...

Algunas novedades de Android 8

Además de los cambios que requieren obligatoriamente modificar el código para que sea compatible con la nueva versión de Android, existen otras modificaciones y mejoras de la plataforma que permiten simplificar el desarrollo o agregar funcionalidades a la aplicación.

1. Las fuentes en XML

Android 8 introduce una simplificación esperada desde hace bastante tiempo por parte de los desarrolladores: la posibilidad de declarar una o varias fuentes directamente en el código XML de un layout, en lugar de tener que gestionar de forma obligatoria esta funcionalidad en el código Java.

En la ficha de presentación de un DVD, el título del DVD aparece con una fuente específica, Roboto-Thin, que se aplica, de momento, al componente TextView en el código del fragmento ViewDVDFragment.


Typeface typeface =   
  Typeface.createFromAsset(getActivity().getAssets(),"Roboto-Thin.ttf");  
txtTituloDVD.setTypeface(typeface);
 

Ahora es posible especificar esta fuente en el código del layout del fragmento. Para ello, hay que situar el archivo de la fuente en una carpeta específica: la carpeta /font, subcarpeta de la carpeta /res.

Preste atención, esta característica exige utilizar la versión 3 de Android Studio. Android Studio 2.3.3 (versión estable en el momento de escribir este libro) no es capaz de gestionar los archivos de fuente.

 En la vista de proyecto de Android Studio, haga clic con el botón derecho en la carpeta /res de la aplicación.

 Seleccione, en el menú contextual, la opción New y, a continuación, Android resource directory. Se abre...