Wear OS es una excelente plataforma para que los usuarios de Android interactúen con una variedad de contenido de audio, como audiolibros, música, podcasts y radio, mientras están en movimiento. Wear OS by Google te permite escribir apps para una variedad de categorías, incluido el contenido de audio, que ayudan a los usuarios a mantenerse conectados, saludables y expresarse.
Si desarrollaste para Android en otras ocasiones, es posible que algunas funciones, como las apps y las notificaciones, te resulten familiares. Puedes usar tus conocimientos sobre el Modern Android Development cuando desarrollas contenido para Wear OS.
Principios del desarrollo para Wear OS
Wear OS se basa en Android, por lo que muchas de las prácticas recomendadas para Android también se aplican en Wear OS. Para optimizar el tiempo de desarrollo, lee estos principios antes de comenzar a compilar tu app para Wear OS.
Cómo crear y ejecutar una app en Wear OS
La mejor manera de comenzar es ver una app para Wear OS por tu cuenta. Puedes compilar tu primera app para Wear OS con una plantilla de Android Studio. En la app, se muestran las diferentes maneras de ver información de un vistazo en dispositivos Wear OS y se presentan algunas prácticas recomendadas para desarrollar apps en la plataforma.
Para obtener una guía paso a paso, consulta Cómo crear y ejecutar una app en Wear OS.
Diferencias entre el desarrollo para Wear OS y el desarrollo para dispositivos móviles
Existen algunas diferencias entre cómo se diseña una app para dispositivos móviles y una app para Wear OS. Para averiguar en qué se diferencia una función, una API o una práctica recomendada específica en el desarrollo de apps para Wear OS en comparación con el desarrollo en dispositivos móviles Android, consulta la tabla de funciones.
Casos de uso comunes para las apps de contenido multimedia en Wear OS
Crea una app de contenido multimedia en Wear OS para que los usuarios puedan transmitir y reproducir contenido descargado desde el reloj. Para producir la mejor experiencia del usuario, considera implementar los siguientes casos de uso de contenido multimedia, que funcionan particularmente bien en dispositivos Wear OS.
Reproducir contenido descargado
Los usuarios pueden escuchar contenido cuando hacen ejercicio sin necesidad de una conexión de red. Si bien un dispositivo Wear OS generalmente admite Bluetooth y Wi-Fi, es posible que no sea compatible con LTE. Diseña para conexiones inestables y casos de uso sin conexión, como hacer ejercicio o viajar ida y vuelta al trabajo, cuando un usuario puede dejar su dispositivo móvil en casa. Para obtener más información, consulta Cómo trabajar con contenido descargado.
Reproduce contenido en cualquier red disponible
Los usuarios pueden escuchar música, podcasts o una estación de radio transmitiendo desde el reloj, pero la transmisión puede agotar la batería. Prioriza el contenido descargado cuando los usuarios elijan escuchar contenido en el reloj. Para ello, muestra las descargas que se utilizaron recientemente en la lista de exploración. Considera agregar un botón que los lleve a una lista completa de descargas, como se muestra en las siguientes imágenes.
Figura 1: Una lista de bibliotecas de audio incluye "Descargas"
Figura 2: Una lista de bibliotecas de audio, que incluye una playlist y un audiolibro
Cómo compilar con Compose para Wear OS
Compose para Wear OS forma parte de Android Jetpack y, al igual que las otras bibliotecas de Wear Jetpack que usas, te ayuda a escribir mejor código más rápido. Este es el enfoque recomendado de Google para compilar interfaces de usuario de apps para Wear OS.
Muchos de los principios de desarrollo de Jetpack Compose para dispositivos móviles se aplican a Compose para Wear OS. Sin embargo, existen algunas diferencias clave. A medida que compilas con Compose para Wear OS, es importante diseñar apps que les permitan a los usuarios acceder de manera conveniente y rápida a este contenido desde sus relojes. El reloj es una plataforma única en la que la prioridad se centra en la facilidad y la velocidad de las interacciones, ya que los usuarios pasan mucho menos tiempo interactuando con su reloj que con su teléfono o tablet.
Para obtener más información sobre las ventajas generales de un framework de IU declarativo, consulta Por qué implementar Compose. Si nunca usaste el kit de herramientas de Jetpack Compose, consulta la ruta de aprendizaje de Compose. Si deseas obtener más información sobre Compose para Wear OS, consulta la ruta de aprendizaje de Compose para Wear OS y el repositorio de muestras de Wear OS en GitHub.
Kit de herramientas de contenido multimedia para Wear OS
El kit de herramientas multimedia de Wear OS es un conjunto de bibliotecas que acelera el desarrollo de apps de contenido multimedia de alta calidad para Wear OS. El kit de herramientas forma parte del proyecto Horologist. Horologist es una biblioteca adicional que ayuda a acelerar el desarrollo de tu app.
El kit de herramientas usa las mejores bibliotecas para casos de uso de contenido multimedia, desde una IU implementada con Compose para Wear OS hasta capacidades de reproducción implementadas con Media3. Si tu app tiene requisitos específicos, puedes adoptar la implementación de la IU del kit de herramientas y, al mismo tiempo, seguir usando el reproductor existente.
El kit de herramientas multimedia puede ayudarte a resolver desafíos, como evitar la reproducción de contenido multimedia en las bocinas integradas del reloj, habilitar la descarga de audio y evitar la necesidad de hacer ping a la red de forma innecesaria.
En Diseña apps de contenido multimedia, se proporcionan las instrucciones que implementas con Horologist, así como información sobre la arquitectura y los casos de uso para Wear OS.
Crea la experiencia del usuario esperada en Wear OS
Cuando crees una app de contenido multimedia en Wear OS, ten en cuenta que la experiencia del usuario es diferente en los relojes que en los dispositivos móviles, en especial en lo que respecta a lo siguiente:
- Las bocinas integradas no están diseñadas para reproducir música. Por lo tanto, usa bocinas o auriculares Bluetooth.
- La conectividad de red es limitada o variable, por lo que debes optimizar tu app para diferentes condiciones de red y minimizar el uso de la red.
- Las baterías más pequeñas tienen energía limitada. La batería se consume más rápido cuando el dispositivo procesa audio en la CPU principal y cuando tiene una señal LTE deficiente. Agrega compatibilidad con la descarga de audio para ayudar a conservar la energía.
- El dispositivo ofrece varias plataformas de IU para que los usuarios vuelvan a interactuar con tu app. Muestra las funciones de tu app en estas plataformas.
Cómo usar bocinas o auriculares Bluetooth
Aunque las bocinas del reloj se pueden usar para llamadas y actividades guiadas, no ofrecen la mejor experiencia para escuchar contenido multimedia.
Para brindar la mejor experiencia del usuario, la app puede usar el kit de herramientas de contenido multimedia para asegurarse de reproducir audio cuando los auriculares Bluetooth o las bocinas Bluetooth estén conectados al reloj.
El kit de herramientas de contenido multimedia proporciona una extensión de Media3 específica que decora la instancia de ExoPlayer y detiene de forma proactiva la reproducción accidental antes de que emita sonido.
Optimiza para las condiciones de red
Para que tu app de contenido multimedia funcione bien en un reloj, debes tomar decisiones sobre las siguientes consideraciones de transmisión y condiciones de red:
- Optimiza el contenido eligiendo una tasa de bits baja para la transmisión, como 48 kbps, y códecs como AAC y MP3.
- Optimiza la estrategia de carga previa de imágenes y pistas para permitir que la reproducción continúe cuando pierdas la conexión de forma temporal.
- Prueba tu app en todas las configuraciones de red: Wi-Fi, LTE y reloj conectado al teléfono mediante Bluetooth. También prueba lo que sucede cuando el reloj cambia de red.
El kit de herramientas de contenido multimedia de Wear OS ayuda a sentar las bases de una app de alto rendimiento, como proporcionar el módulo de reconocimiento de red para elegir la mejor conexión para una operación específica.
Habilita la descarga de audio
Para mejorar el rendimiento y reducir el consumo de energía de las apps en Wear OS, usa la descarga de audio. Permite que el procesamiento de audio se descargue
de la CPU a un procesador de señales dedicado. El Media Toolkit proporciona asistencia
con el AudioOffloadManager.
Si no sabes si se admite la descarga de audio para un formato de audio determinado, usa el método AudioManager.isOffloadedPlaybackSupported(). Para obtener más información, consulta la documentación de Exoplayer.
Evita las conexiones de red, a menos que sean absolutamente necesarias
Cuando desarrollas para Wear OS, puedes esperar que los usuarios tengan una conectividad de red limitada. Si usas MediaDownloadService, permites que los usuarios tengan descargas confiables y de alto rendimiento para que puedan reproducir contenido multimedia dondequiera que estén.
El kit de herramientas te permite optimizar las descargas de contenido multimedia de manera más eficiente con el DownloadManager de Media3 y WorkManager de AndroidX para programar las descargas.
Media3 inicia todas las notificaciones y los servicios en primer plano necesarios. El código de la app de ejemplo configura WorkManager para que ejecute las descargas cuando haya una conexión Wi-Fi disponible para proporcionar un mejor rendimiento. El uso del módulo de reconocimiento de red permite a los desarrolladores asignar operaciones de red con el tipo de red.
Mantén a los usuarios al tanto de la reproducción de contenido multimedia en curso
En Wear OS 3 y versiones posteriores, puede aparecer una notificación en curso en varias plataformas dentro de la interfaz de usuario de Wear OS. Cuando se presiona la notificación de la actividad en curso, la app abre la pantalla del reproductor.
Con Media3, Wear OS se encarga automáticamente de crear actividades en curso para las apps de contenido multimedia con un intent para abrir la app. Esto permite que los usuarios interactúen más con las actividades de larga duración, como la reproducción de contenido multimedia.