Publicado por Stephanie Cuthbertson, gerente de Administración de productos
Hoy arrancó la Android Dev Summit en el Computer History Museum (Mountain View, CA) para celebrar los 10 años de Android y dar a conocer algunas nuevas funciones importantes para desarrolladores de este sistema operativo. ¡Echa un vistazo a todo lo que compartimos!

Crea nuevas experiencias con Android

Desde la versión 1.6 de Android, nuestros socios han utilizado diferentes tamaños y densidades de pantallas, lo que permite a la plataforma optimizar una amplia categoría de factores de forma y nuevas experiencias, como Android TV, Android Auto, Wear OS e incluso apps de Android en Chromebooks. Las pantallas de los teléfonos son un área en la que los socios de Android superan los estándares, como el lanzamiento de "phablets", cuando las pantallas de los teléfonos aún eran muy pequeñas. Hoy en día, un phablet es solo un teléfono, un tamaño estándar al que los usuarios ya se acostumbraron.
Ahora los fabricantes de dispositivos Android están creando una nueva categoría: Foldables. Gracias a la nueva tecnología de flexibilidad, es posible doblar y plegar pantallas.

En términos generales, existen dos variantes: los dispositivos de dos pantallas y los que solo tienen una. Cuando se dobla un teléfono plegable, se transforma en un dispositivo más que puedes guardar en el bolsillo o la cartera. Cuando se abre, se puede apreciar una característica única que denominamos "continuidad visual". Por ejemplo, puedes comenzar a ver un video con la pantalla plegada y abrir el dispositivo para disfrutar del contenido como si estuvieras mirándolo en una tablet. De esta forma, obtendrás una experiencia de visualización atractiva y envolvente. A medida que despliegas el teléfono, la app se adapta sin problemas a la pantalla más grande. Optimizaremos Android para que se adapte a este nuevo factor de forma. Además, implementaremos cambios que permitan a desarrolladores de todo el mundo aprovechar las posibilidades que esto ofrece para crear experiencias increíbles, así como también para atraer y satisfacer a más usuarios. Estate atento a la sesión de Foldables en Dev Summit para obtener más información al respecto. Prepárate para ver Foldables de varios fabricantes de Android, incluido un dispositivo que Samsung ya presentó y que piensa vender el año que viene.

Kotlin: mejoras para el lenguaje de mayor crecimiento

En 2017, logramos que Kotlin se posicionara como un lenguaje de primer nivel en Android. Este mes, se iniciaron más de 118,000 proyectos nuevos con Kotlin en Android Studio, solo teniendo en cuenta a aquellos usuarios que aceptaron compartir métricas. Esta cifra representa un aumento del 900% con respecto al año anterior. En GitHub, se ha convertido en el lenguaje de más rápido crecimiento en términos de colaboradores, y en Stack Overflow ganó el premio al segundo lenguaje más querido. Según nuestras encuestas, cuantos más se usa Kotlin, mayor es la satisfacción que genera.
La semana pasada, JetBrains lanzó la versión más reciente de Kotlin (1.3), que incluye nuevas funciones de lenguaje, API, correcciones de errores y mejoras de rendimiento:
  • Las clases entre líneas permiten crear un tipo que no se asigna, a menos que esté empaquetado. En el caso de los dispositivos restringidos a los que se orientan las apps de Android, se recomienda evitar la asignación y conservar la seguridad de tipos.
  • Los números sin firma ahora forman parte de la biblioteca estándar de Kotlin, incluidos UInt, UByte y ULong. Estos nuevos tipos se construyen utilizando clases entre líneas.
  • El código multiplataforma previamente escrito para Android o JVM ahora también puede orientarse a JavaScript o a otro código nativo, lo que permite reutilizar partes de tu código base en más plataformas.
  • Se estabilizó la compatibilidad con corrutinas. Ahora puedes combinar la compatibilidad de lenguajes y bibliotecas para simplificar la forma en que interactúas con las operaciones asíncronas y realizas trabajos concurrentes, acciones que son esenciales para las apps de Android.
Estas nuevas funciones de Kotlin 1.3 se integrarán en las API específicas de este lenguaje que brindamos, principalmente a través de extensiones KTX como parte de Jetpack.

Android Jetpack: Navigation, Work Manager y Slices

En Google I/O, anunciamos Jetpack, la próxima generación de herramientas y API de Android para acelerar el desarrollo de aplicaciones. Jetpack se basa en los fundamentos establecidos por Support Library y Architecture. El 80% de las 1,000 apps y juegos principales usan una de las nuevas bibliotecas de Jetpack en producción.
En los últimos meses, agregamos a la versión pública de AOSP AndroidX, la versión mejorada para Jetpack de la Support Library original de Android. Esto significa que puedes ver las funciones y correcciones de errores implementadas en tiempo real, así como colaborar con cualquiera de las bibliotecas de AndroidX. Obtén más información sobre cómo hacerlo aquí.
Hemos estado trabajando para obtener la mayor cantidad de comentarios y mejoras posibles en dos nuevas bibliotecas de Architecture Component: Navigation y Work Manager, y tenemos pensado pasarlas a fase Beta este mes. El Architecture Component de Navigation ofrece una forma simplificada de implementar los principios de navegación de Android en tu aplicación usando un solo elemento Activity. Además, el nuevo editor de Navigation de Android Studio crea y edita tu arquitectura de navegación. Esto elimina la necesidad de usar una plantilla de navegación, brinda operaciones de navegación atómicas y facilita la reproducción de transiciones animadas, entre otros aspectos. Work Manager facilita la ejecución de tareas en segundo plano de manera más eficiente, ya que elige la solución más adecuada según el estado de la aplicación y el nivel de API del dispositivo.

Editor de Navigation
También nos complace anunciar que Android Slices estará disponible en experimentos públicos de la Búsqueda. En la edición de I/O de este año, presentamos Slices, una nueva forma de atraer usuarios a tu app. Esta función es como un fragmento pequeño de tu app, donde puedes mostrar contenido y acciones. Puedes reservar un vuelo, reproducir un video o pedir un taxi. Slices es otro producto que nos gustaría lanzar cuanto antes, pero queremos tomarnos el tiempo necesario para poder desarrollarlo a la perfección. Este mes, estará disponible la EAP pública para Doist, Kayak y otros socios. Ejecutaremos experimentos en los resultados de la búsqueda de Google. Para obtener más información, también habrá una sesión en Dev Summit con más información y recomendaciones.

Android Studio: nos enfocamos en la productividad, la velocidad de compilación, la calidad y otros aspecto fundamentales

Android Studio es nuestro IDE oficial para el desarrollo de Android. Nos interesaba saber qué paso consume más tiempo. Cuando recopilamos datos de los usuarios de Android Studio, notamos que el tiempo de compilación se agiliza con cada versión (a veces tan rápido como un 20%), aunque también observamos que se vuelve más y más lento con el paso del tiempo. ¿Cómo es posible que pasen ambas cosas? Hemos estado buscando las respuestas necesarias.
Resulta que la compilación es un ecosistema muy complicado. Las opciones para desarrolladores hacen una gran diferencia. Nuestros desarrolladores usan una combinación muy amplia (y cada vez más grande) de sistemas operativos, complementos personalizados, lenguajes y procesadores de anotaciones. Todos estos elementos afectan a los tiempos de procesamiento. Hubo un caso en el que un complemento que utilizan algunos usuarios reducía silenciosamente las velocidades de compilación hasta en un 45%. En cuanto supimos esto, nos dimos cuenta de que necesitamos herramientas de análisis y creación de perfiles que te permitan comprender fácilmente qué ralentiza tus compilaciones. También estamos trabajando en nuestros propios complementos para acelerar el rendimiento y asegurarnos de poder seguir mejorando la productividad de las compilaciones.
Android Studio 3.3 ya está disponible en versión Beta 3. En las próximas versiones, nos enfocaremos en la calidad y otros aspectos fundamentales: reducir la cantidad de fallos y bloqueos, optimizar el uso de memoria y corregir errores que afecten a los usuarios. También anunciamos que Android Studio será nuestro IDE oficial para el Sistema operativo Chrome a principios del próximo año. Obtén más información al respecto aquí.

Android App Bundles y funciones dinámicas

Desde 2012, los tamaños de las apps han aumentado drásticamente (cerca de 5 veces). Sin embargo, esto no es un aspecto positivo, ya que las apps más grandes generar menos instalaciones, tienen porcentajes de actualización inferiores y los usuarios las desinstalan más rápido. Por este motivo, creamos Android App Bundle, un nuevo formato que solo publica el código y los recursos que los usuarios necesitan para ejecutar tu app en su dispositivo específico. En promedio, las apps pesan un 35% menos, en comparación con un APK universal. De esta forma, también te ahorras tiempo y trabajo con cada versión, ya que no debes usar soluciones incompletas, como un APK múltiple. Android Studio 3.2 brindó compatibilidad completa con paquetes de apps y ahora hay miles en producción que suman millones de instalaciones, incluidas apps de Google como YouTube, Google Maps, Google Fotos y Google Noticias.
Los paquetes de apps ahora también admiten bibliotecas nativas sin comprimir. Sin que los desarrolladores deban realizar tareas adicionales, los paquetes reducen el tamaño de las apps que utilizan bibliotecas nativas en un 8% para las descargas y un 16% para el almacenamiento interno en dispositivos que ejecuten Android M o una versión posterior.
Una vez que empieces a usar los paquetes de apps, también podrás comenzar a modularizar tus apps. Gracias a los módulos de funciones dinámicas, puedes cargar cualquier funcionalidad de una app a pedido en lugar de durante la instalación. Ya no necesitarás conservar en todos los dispositivos y para siempre las funciones que ocupan más espacio y que solo se usan una vez. Con las funciones dinámicas, se pueden instalar y desinstalar dinámicamente solo cuando la app las solicite.

API de In-app Updates

Sabemos que te gustaría tener más controles para garantizar que los usuarios ejecuten la versión más reciente de tu app. Por eso, lanzaremos la API de In-app Updates. La estamos probando mediante acceso anticipado con algunos socios y pronto estará disponible para todos los desarrolladores.
Esta API ofrecerá dos opciones principales: la primera es una experiencia de pantalla completa para actualizaciones críticas cuando quieras que el usuario espere a que la actualización se aplique de inmediato. La segunda opción es una actualización flexible, lo que significa que el usuario puede seguir usando la app mientras se descarga la actualización. Podrás personalizar el flujo de actualización para que se sienta como parte de tu contenido.

Detección de apps instantáneas

También facilitamos el proceso de adopción de apps instantáneas. Recientemente, agregamos una función para hacer que las URL web sean opcionales, lo que permite tomar el tráfico existente del vínculo directo de Play Store y enviar a los usuarios a tu experiencia instantánea (si está disponible). Asimismo, aumentamos el límite de tamaño de las apps instantáneas a 10 MB para el botón "Probar ahora" en Play Store y banners web a fin de que sea mucho más fácil de adoptar.
Android Studio 3.3 (Beta) ahora permite crear paquetes de apps instantáneas. Esto significa que puedes crear e implementar tus experiencias instantáneas e instaladas desde un solo proyecto de Android Studio, e incluir ambas en un único Android App Bundle. Solo debes subir UN artefacto para ambas apps.

Como desarrollador, tus comentarios han sido de vital importancia para definir mejor las áreas en las que debemos trabajar. Ya formas parte de nuestro proceso de trabajo, que abarca desde simples ideas hasta EAP y otras versiones, pruebas Beta y la iteración después del lanzamiento. Esperamos que nos acompañes durante los próximos días, ya sea mirando nuestras más de 30 transmisiones en vivo, desde las redes sociales o de forma presencial, en Mountain View. En nombre de todo el equipo, queremos agradecerte por enviarnos tus comentarios y por colaborar con nosotros. Esperamos que disfrutes de Android Dev Summit.