Android va a renovarse radicalmente en las próximas semanas con la nueva versión anunciada en la última Google I/O. De momento, de nombre clave Android L, aunque muy sonado por las redes sin confirmación oficial por parte de Google, Android Lollipop.

Esta nueva versión contará con una revisión a nivel de diseño a la cual Google ha denominado Material Design debido a que los elementos en pantalla responderán de una manera más natural que en versiones anteriores. Para entrar en detalle de esto, seguro que lo hacen mejor mis compañeras del departamento de diseño, yo voy a hablar de las novedades que los desarrolladores de SlashMobility hemos visto más interesantes para nosotros.

Android L tendrá muy en cuenta la posición Z, o la profundidad, a la hora de mostrar los elementos en pantalla. Para conseguir tal efecto en el desarrollo de nuestras aplicaciones se podrá usar el atributo elevation, tanto en el diseño de los layouts como en el código Java, y el SO calculará la sombra proyectada y el escalado del elemento. Además, también se va a hacer hincapié en una respuesta más fluida de los elementos cuando el usuario interactúe con ellos. Se acabó lo de cambiar la imagen de fondo cuando pulsemos un botón. La nueva versión va a facilitar las cosas para implantar animaciones de una manera más fácil en nuestros selector, cambiándolo por animated-selector. Permitiendo así asignar una animación a un cambio de estado.

Esta nueva versión incluirá además nuevas vistas que podremos usar en nuestras Actividades. Una muy útil será RecyclerView. Una versión avanzada del antiguo ListView, que aporta mejoras en la gestión del reciclaje de las vistas y facilita la incorporación de animaciones independientes en cada celda de la lista. Esperemos que se acerque un poco más al magnífico UITableView de iOS. Por otro lado, también podremos usar CardView, que parece que va a volverse muy popular en las aplicaciones del SO a partir de ahora. Básicamente, consiste en una especie de contenedor de información con un diseño base muy consistente con el look&feel de esta nueva versión. Estas dos vistas vendrán incorporadas en la típica support-library, por lo que, aunque nuestra aplicación se lance para versiones anteriores a Android 5.0, podremos incorporarlas en nuestras aplicaciones.

principal_rssAdemás de las mejoras visuales y nuevas vistas, Android L cambia el runtime o la máquina virtual anterior Dalvik por ART. Este cambio aporta mejoras importantes de rendimiento, mejoras en el GarbageCollector, aporta compatibilidad con dispositivos de 64bits, y mejora las posibilidades de debug mientras desarrollamos. Este cambio no debería afectar a nuestras aplicaciones anteriores, pero sí deberíamos revisar la compatibilidad con ART en caso de que nuestra aplicación incorpore código C++,  realice llamadas específicas al mencionado GarbageCollector mediante System.gc()o usemos herramientas para generar código diferente del compatible con el SDK, por ejemplo herramientas de ofuscación de código. Como apunte extra, también deberemos vigilar si usamos la llamada ActivityManager.getRecentTasks(), ya que a partir de esta llamada devolverá menos información para proteger la privacidad del usuario.

Otra de las mejoras que llaman la atención es la posibilidad de convertir páginas de PDF a bitmaps para poder representarlos en pantalla sin la ayuda de una aplicación externa, mediante la clase PDFRenderer. Y no sólo permitirá convertir a imágenes pantallas completas, sino porciones de la misma para poder representar zoom, por ejemplo.

Para finalizar, nos gustaría añadir que Android L parece que va a suponer un salto mayor aún que el que supuso Ice Cream Sandwich en su momento. Un renovado completo del aspecto gráfico y las mejoras internas son sus grandes bazas pero, como costumbre, viene con el lastre por defecto que siempre sufrimos los desarrolladores de este sistema operativo, la enorme fragmentación.

Autor del post: Antoni Castejón(@AiverPim) ; Android Developer en SlashMobility

Recommended Posts
Comments
pingbacks / trackbacks

Leave a Comment