Esta página contiene información sobre las versiones de Wear OS, como el SDK de Wearable y la biblioteca de compatibilidad para wearables.
31 de agosto de 2023: SDK de Wearable 18.1.0
La versión 18.1.0 del SDK de Wearable incluye actualizaciones menores de API para que sea compatible con la próxima versión de la biblioteca de compatibilidad para wearables. Las actualizaciones incluyen:
- Compatibilidad con cambio de teléfono. Consulta
NodeClient.OnNodeMigratedListener
para conocer más detalles - Documentación adicional para
MessageClient
enviar y responder mensajes - Vínculos actualizados en las descripciones de API
20 de septiembre de 2022: SDK de Wearable 18.0.0
La versión 18.0.0 del SDK de Wearable incluye actualizaciones menores de API para que sea compatible con la próxima versión de la biblioteca de compatibilidad para wearables. Las actualizaciones incluyen:
- Compatibilidad con
WearableListenerService
para apps orientadas a Android 13 (error 235538840) - Nuevo método
MessageClient.sendRequest()
16 de febrero de 2022: Biblioteca de compatibilidad para wearables v2.9.0
Con la versión 2.9.0 de la biblioteca de compatibilidad para wearables, se dan de baja todas las demás clases. En su lugar, usa las bibliotecas de Jetpack para Wear OS.
29 de octubre de 2021: Biblioteca de Jetpack para Wear OS
Las bibliotecas de Jetpack para Wear OS son reemplazos de las bibliotecas de compatibilidad para wearables y no están diseñadas para usarse en conjunto. La biblioteca de compatibilidad para wearables no funciona en Wear OS 3.
27 de abril de 2021: SDK de Wearable 17.1.0
La versión 17.1.0 del SDK de Wearable incluye actualizaciones menores de API para que sea compatible con la próxima versión de la biblioteca de compatibilidad para wearables.
28 de septiembre de 2020: Biblioteca de compatibilidad para wearables v2.8.1
La versión 2.8.1 de la biblioteca de compatibilidad para wearables incluye el cambio que se detalla a continuación.
Permiso para inhabilitar Jetifier cuando se usa la plantilla de cara de reloj
La plantilla de cara de reloj de Android Studio ahora usa dependencias de AndroidX para permitir que Jetifier se inhabilite. Estas correcciones se aplican cuando se usa la plantilla de cara de reloj con Android Studio 4.2 o versiones posteriores.
24 de septiembre de 2020: Biblioteca de compatibilidad para wearables v2.8.0
La versión 2.8.0 de la biblioteca de compatibilidad para wearables incluye los cambios que se detallan a continuación.
Capacidad de resguardo para especificar proveedores de complicaciones predeterminadas que no sean del sistema
Las caras de reloj ahora pueden usar setDefaultComplicationProviderWithFallbacks
para especificar que se usen uno o más proveedores de complicaciones que no sean del sistema de forma predeterminada. Si dichos proveedores no están instalados, el sistema recurre a su proveedor predeterminado.
WearableActivity dejó de estar disponible
WearableActivity
ya no está disponible. En su lugar, usa AmbientModeSupport
.
SKIP_CONFIRMATION_UI dejó de estar disponible
ActionConfirmationActivity.SKIP_CONFIRMATION_UI
ya no está disponible. Este elemento adicional dejó de usarse desde el lanzamiento de la versión 2.0 de Wear.
15 de mayo de 2020: Biblioteca de compatibilidad para wearables v2.7.0
La versión 2.7.0 de la biblioteca de compatibilidad para wearables incluye la siguiente función.
Aceleración de hardware para las caras de reloj
Ahora puedes solicitar un lienzo acelerado por hardware cuando uses la clase CanvasWatchFaceService
. Aprovecha la aceleración de hardware para mejorar el rendimiento de la cara de reloj y acceder a más datos de rendimiento de la IU.
Para obtener más información, consulta Cómo mejorar el rendimiento de la cara de reloj con la aceleración de hardware.
21 de abril de 2020: Biblioteca de compatibilidad para wearables v2.6.0
La versión 2.6.0 de la biblioteca de compatibilidad para wearables incluye la mejora que se detalla a continuación.
Migración a Android Jetpack
Se migró la biblioteca de compatibilidad para wearables a Android Jetpack.
Las bibliotecas existentes ahora se asignan a AndroidX y se puede acceder a ellas con el espacio de nombres de androidx
. Además, se quitaron todas las dependencias de la biblioteca de compatibilidad obsoleta.
Este cambio también permite el uso de bibliotecas de compatibilidad para wearables en Android Studio 4.0 y versiones posteriores, lo que resuelve algunos problemas, como el error #147972079.
28 de agosto de 2019: Biblioteca de compatibilidad para wearables v2.5.0
La versión 2.5.0 de la biblioteca de compatibilidad para wearables incluye la mejora que se detalla a continuación.
Corrección de ComplicationDrawable cuando se llama startActivity() con el tipo de complicación TYPE_NO_PERMISSION
ComplicationDrawable
ahora incluye una marca NEW_TASK
para asegurarse de que las llamadas startActivity()
que se originan a partir de un elemento WatchFaceService
incluyan FLAG_ACTIVITY_NEW_TASK
para evitar que ocurra una android.util.AndroidRuntimeException
.
Este cambio permite que el tipo de complicación TYPE_NO_PERMISSION
inicie correctamente la actividad de solicitud de permiso en lugar de que se produzcan fallas en la cara de reloj.
25 de septiembre de 2018: SDK de Wearable 16.0.0
La versión 16.0.0 del SDK de Wearable reduce la versión requerida de los Servicios de Google Play de 12.4 a 8.6. Este cambio permite que las apps existentes se actualicen a la última versión del SDK de Wearable sin necesidad de una actualización del APK de los Servicios de Google Play.
11 de junio de 2018: Actualización a Versión preliminar para desarrolladores de Wear OS 2
Una actualización inalámbrica reciente de la Versión preliminar para desarrolladores de Wear OS 2 volvió a habilitar las alarmas y los trabajos para las apps en segundo plano.
Si bien este cambio de política permite una mayor flexibilidad en el desarrollo de apps, las alarmas y los trabajos en segundo plano siguen sujetos a otras restricciones de Android P, como las que se vinculan con los buckets de App Standby. Sigue las prácticas recomendadas para garantizar que tus apps funcionen bien, independientemente del bucket en el que se encuentren.
Esta actualización también fortalece la entrada del usuario y la privacidad de los datos, ya que limita el acceso de una app en segundo plano a la entrada del usuario y los datos de sensores. En función de los requisitos de una app, puedes necesitar usar un servicio en primer plano para permitir el acceso continuo a los datos de sensores.
8 de mayo de 2018: Versión preliminar para desarrolladores de Wear OS 2
La Versión preliminar para desarrolladores de Wear OS 2 incluye funciones como una experiencia mejorada con Asistente de Google.
Envía cualquier error o comentario a través de la Herramienta de seguimiento de errores de Wear OS by Google. Cuanto antes lo hagas, mayor será la probabilidad de que las correcciones se incluyan en la versión final.
Errores conocidos
Esta sección contiene problemas conocidos para la versión Preview 2.
Problemas de la imagen de Wear OS
- Cuando usas cualquier app y presionas el botón de encendido al costado del reloj, podría llevarte de vuelta a la pantalla anterior en lugar de la cara de reloj.
Problemas de la imagen de Wear OS para China
- Cuando usas cualquier app y presionas el botón de encendido al costado del reloj, podría llevarte de vuelta a la pantalla anterior en lugar de la cara de reloj.
- Los parámetros de configuración de sonido relacionados con el volumen no persisten. Por ejemplo, una llamada entrante produce sonidos perceptibles en el reloj, incluso cuando el sonido del reloj está desactivado. Si se configura el volumen de alarma, los cambios no tienen efecto.
- Es posible que varias notificaciones continuas no se muestren de forma correcta. Por ejemplo, si se configuran un temporizador y un cronómetro, las notificaciones no se muestran. Te recomendamos probar tu app con una notificación continua en lugar de múltiples.
- La tienda de aplicaciones de Wear de la versión para China no funciona. Los desarrolladores no podrán actualizar ni instalar apps nuevas por medio de ese canal. Les recomendamos usar "adb" para efectuar una instalación de prueba de la aplicación como solución alternativa.
Problemas en el emulador de Wear
- Una llamada entrante a un teléfono vinculado no se muestra (duplica) como llamada entrante en el emulador vinculado.
- Cuando usas SDK Manager para instalar o confirmar que tienes la versión más reciente de Android P, o la versión para China, es posible que la selección de las casillas de verificación junto a esas opciones se anule después de que las selecciones. Si esto sucede, selecciónalas de nuevo.
- Cuando un emulador se inicia en frío, puede mostrarse el siguiente error: "Existe un problema interno con el dispositivo. Comunícate con el fabricante para obtener más información". Esto no afecta la funcionalidad. Desplázate hacia abajo y haz clic en Aceptar para empezar a probar tu app.
- Es posible que la respuesta por voz no funcione en el emulador. Por ejemplo, si recibes una notificación de un mensaje de Google Hangouts en el emulador de Wear e intentas responder a ese mensaje mediante voz, se muestra el mensaje de error "Google continúa fallando" y se inhabilitan las respuestas mediante voz.
- Es posible que Instant Run no sea compatible con el emulador de Wear.
- Es posible que no funcione la captura de pantalla de forma programática, por ejemplo, usando "adb" o la generación de un informe de errores. Como solución alternativa, haz clic en el botón de la cámara en la barra de herramientas del emulador para realizar una captura de pantalla.
Problemas en la versión para China del emulador de Wear
- Es posible que una llamada entrante a un teléfono vinculado no se muestre (duplique) como llamada entrante en el emulador vinculado. Por lo tanto, puede suceder que las notificaciones de llamadas perdidas no se muestren en el emulador. También es posible que no puedas responder una llamada desde el emulador y que su tono continúe.
- Cuando usas SDK Manager para instalar o confirmar que tienes la versión más reciente de Android P, o la versión para China, es posible que la selección de las casillas de verificación junto a esas opciones se anule después de que las selecciones. Si esto sucede, selecciónalas de nuevo.
- Cuando un emulador se inicia en frío, puede mostrarse el siguiente error: "Existe un problema interno con el dispositivo. Comunícate con el fabricante para obtener más información". Esto no afecta la funcionalidad. Desplázate hacia abajo y haz clic en Aceptar para empezar a probar tu app.
- Es posible que Instant Run no sea compatible con el emulador de Wear.
- Es posible que no funcione la captura de pantalla de forma programática, por ejemplo, usando "adb" o la generación de un informe de errores. Como solución alternativa, haz clic en el botón de la cámara en la barra de herramientas del emulador para realizar una captura de pantalla.
Asistente de Google en Wear
La compatibilidad mejorada con Asistente en Wear OS te permite producir una experiencia compatible con wearables sin escribir código de Android. En particular, puedes realizar compilaciones para la plataforma Actions on Google, y ayudar a los usuarios a realizar acciones con tus productos y servicios.
Además, Wear OS ahora admite interacciones más rápidas a través de entradas de voz y táctiles. También se admiten chips de sugerencias, que hacen lo siguiente:
- Ayudan a los usuarios a completar rápidamente las interacciones.
- Proporcionan información a los usuarios sobre la capacidad de tu Action.
A su vez, Wear OS ahora admite más tarjetas visuales además de listas y carruseles.
Por lo tanto, puedes usar DialogFlow
plantillas o la SDK de Actions para crear Actions on Google para Wear OS. También puedes aprovechar las nuevas plantillas de respuesta que son específicas para un reloj. Entre las prácticas recomendadas para Actions on Google, se incluyen las siguientes:
- Diálogos cortos y concisos
- Habilitación de comentarios mediante imagen y voz
Estas mejoras para Asistente en Wear OS no dependen de Android P y se están implementando para todos los usuarios de Wear 2.0. Para ver una introducción a la creación de Actions on Google, consulta Integración con Asistente de Google.
Ahorro de batería en la Versión preliminar para desarrolladores 2
Como se indica a continuación, se encuentran disponibles características relacionadas con la energía para aumentar la duración de la batería. La información de esta sección de la Versión preliminar para desarrolladores 2 sustituye la información relacionada con la alimentación para la Versión preliminar para desarrolladores 1.
Nuevo modo: Ahorro de batería mejorado
Mientras el reloj se encuentra en el modo mejorado de ahorro de batería, se muestra una cara de reloj optimizada para el ahorro predeterminada. Se desactiva lo siguiente:
- Radios
- Pantalla táctil
- Función Inclinar para activar
Los usuarios pueden ver la hora si presionan por un instante el botón lateral. Si lo mantienen presionado, pueden regresar al modo completamente operativo y realizar tareas, como pagar con NFC o responder a un mensaje. Asume que tus apps, caras de reloj y proveedores de datos de complicación no estarán disponibles en el modo de ahorro de batería.
Limitación de la actividad en segundo plano
Para mejorar el ahorro de batería, ya no se permite el inicio de alarmas y trabajos en apps que funcionen en segundo plano, a menos que se esté cargando el reloj. Se exceptúan las caras de reloj y las complicaciones activas.
Nota: Si tu app tiene que ejecutarse de manera constante, por ejemplo, para la supervisión en segundo plano, te recomendamos utilizar un servicio en primer plano con el método
startForegroundService()
. Consulta Limitaciones del servicio en segundo plano para obtener más detalles. El uso de servicios en primer plano es apropiado para casos de uso excepcionales; por ejemplo, la supervisión de estado de salud.
Compatibilidad con apps mejorada
Para mejorar la compatibilidad con apps, en Android P comenzaron a implementarse determinadas restricciones para el uso de interfaces que no pertenezcan al SDK. Es conveniente hacer planes para realizar migraciones de métodos y campos que no pertenezcan al SDK. Si no hay un equivalente público disponible para tu caso de uso, infórmanos al respecto.
Tema de IU oscuro para el sistema
Desde principios de 2018, en Wear OS se aplicó un cambio a un tema predeterminado de la IU que tiene un fondo más oscuro para el flujo de notificaciones y el selector del sistema. Con este cambio, se busca mejorar la visibilidad de tus apps. Te recomendamos probar la accesibilidad de tu app con este tema de la IU nuevo.
Codelabs actualizados disponibles
Para ayudarte a explorar formas importantes de desarrollar con Wear OS, se ofrecen codelabs actualizados. Prueba, por ejemplo, el nuevo codelab de caras de reloj basado en Kotlin para experimentar con el lenguaje específico de dominio de Kotlin o DSL.
27 de marzo de 2018: Versión preliminar para desarrolladores de Wear OS 1
Esta sección contiene información sobre la Versión preliminar para desarrolladores 1 de Wear OS by Google. Esperamos ofrecer varias actualizaciones para esta versión preliminar antes de la versión de producción final. Si encuentras algún error, infórmalo a través de la Herramienta de seguimiento de errores de Wear OS by Google. Cuanto antes lo hagas, mayor será la probabilidad de que podamos incluir tus correcciones en la versión final.
Errores conocidos
- En la app complementaria de Wear OS, la opción Informar error de wearable parece funcionar al seleccionarse, pero en realidad no se generan informes de errores.
Usa
adb bugreport
como solución alternativa. - No siempre funciona aceptar una llamada telefónica usando el reloj. Si no funciona, el usuario debe aceptar la llamada directamente desde el teléfono.
- A veces, se muestra un error "Detected problems with API compatibility" después de sincronizar o iniciar una app precargada. El mensaje de error desaparece luego de unos instantes y no tiene efecto en la usabilidad.
- En el menú Configuración del reloj y en el emulador, la opción Iniciar informe de errores se muestra dos veces. Para generar un informe de errores, usa una de las dos opciones, porque solo una funciona. Cuando presionas la opción que funciona, se muestra un aviso que indica que se está generando un informe de errores.
- En la versión para China, la entrada de voz provoca el bloqueo de una app. Por ejemplo, esto sucede con la búsqueda por voz o al usar la voz para agregar un recordatorio, ya que esta funcionalidad utiliza las APIs de entrada de voz. Para realizar pruebas, usa la entrada de escritura a mano o de teclado en vez de la entrada de voz.
- La tienda de aplicaciones de Wear de la versión para China no funciona. Los desarrolladores no podrán actualizar ni instalar apps nuevas por medio de ese canal. Les recomendamos usar "adb" para efectuar una instalación de prueba de la aplicación como solución alternativa.
Aspectos destacados de esta Versión preliminar para desarrolladores
La Versión preliminar para desarrolladores 1 incluye las siguientes características para la prueba de apps:
-
Actividad en segundo plano limitada: Para mejorar el ahorro de energía, las apps que funcionan en segundo plano ya no pueden usar alarmas ni trabajos. Entre las excepciones se incluyen caras de relojes y complicaciones que el usuario seleccionó. Esta función se lanzará de forma gradual en la versión preliminar para desarrolladores, motivo por el cual es posible que no la veas inmediatamente en tu reloj.
Nota: Si tu app debe estar siempre en ejecución, te recomendamos que la modifiques para que sea un servicio en primer plano con el método
startForegroundService()
. Consulta Limitaciones del servicio en segundo plano para obtener más detalles. - Restricciones para el uso de interfaces que no pertenecen al SDK: Para mejorar la compatibilidad con apps, en Android P se comenzó a implementar determinadas restricciones para el uso de interfaces que no pertenecen al SDK. Es conveniente hacer planes para realizar migraciones de métodos y campos que no pertenezcan al SDK. Si no hay un equivalente público disponible para tu caso de uso, infórmanos al respecto.
- Tema de IU oscuro para el sistema: Desde principios de 2018, en Wear OS se aplicó un cambio a un tema predeterminado de la IU que tiene un fondo más oscuro para el flujo de notificaciones y el selector del sistema. Con este cambio, se busca mejorar la visibilidad de tus apps. Te recomendamos probar la accesibilidad de tu app con este tema de la IU nuevo.
- Las radios se desactivan cuando el reloj no está en uso: Para mejorar el ahorro de energía, la radio Bluetooth, la radio Wi-Fi y la radio se apagan cuando se detecta que el reloj se encuentra apartado del cuerpo por un tiempo prolongado. Esta función se lanzará de forma gradual en la versión preliminar para desarrolladores, por lo que es posible que no la veas en tu reloj en un principio. Si esta función complica tu proceso de desarrollo, puedes inhabilitarla con "adb" y el siguiente comando:
adb shell settings put global off_body_radios_off_for_small_battery_enabled 0
- Se desactiva el Wi-Fi cuando el Bluetooth está desconectado: Para mejorar el ahorro de energía, el reloj ya no se conecta automáticamente a una red Wi-Fi cuando se desconecta de una red Bluetooth. Entre las excepciones se incluyen los casos de una app que solicita una red con alto ancho de banda y del reloj cuando se conecta a un cargador. Esta función se lanzará de forma gradual en la versión preliminar para desarrolladores, por lo que es posible que no la veas en tu reloj en un principio.
Actualizaciones en la biblioteca de compatibilidad para wearables v2.3.0
La actualización de la documentación de la v2.3.0 para la biblioteca de compatibilidad para wearables incluye actualizaciones de cambio de la marca.
Además, la biblioteca v2.3.0 incluye actualizaciones relacionadas con los elementos
ComplicationDrawable
y
TextRenderer
para texto que tenga objetos de lenguaje de marcado vinculados con rangos de texto.
Estas clases han mejorado el manejo de textos intercalados.
Solo puede procesarse un subconjunto determinado de intervalos (consulta el método
setText
y conoce los tipos de intervalos que pueden dibujarse), para que los intervalos no parezcan inapropiados cuando se renderizan en una cara de reloj.
15 de marzo de 2018: Cambio de la marca de Wear
Esta sección contiene información acerca de las características de Wear OS.
Nuevo nombre para Android Wear
Se cambió el nombre Android Wear por Wear OS by Google.
27 de febrero de 2018: Actualización del modo ambiente
Esta sección contiene información sobre nuevas funciones de Android Wear.
Nueva clase para admitir el modo ambiente
La versión 27.1.0 de la biblioteca de compatibilidad de Android incluye una nueva clase, AmbientModeSupport
, que sustituye la clase
AmbientMode
ya obsoleta. Se prevén actualizaciones en los ejemplos durante las próximas semanas.
25 de enero de 2018: Emulador final y cuestiones adicionales
Esta sección contiene información sobre nuevas funciones de Android Wear.
Emulador de Android: Actualización para Wear
La actualización final del Android Emulator relacionada con Wear se encuentra disponible para probar apps basadas en la versión de API 26.
Mejoras en la biblioteca de compatibilidad para wearables v2.2.0
La versión 2.2.0 de la biblioteca de compatibilidad para wearables incluye las actualizaciones que se detallan a continuación.
Un nuevo indicador de notificaciones no leídas
Como los usuarios desean estar al tanto de las notificaciones no leídas, se proporciona un nuevo indicador: un punto rodeado por un círculo en la parte inferior de la cara de reloj. Existen mecanismos disponibles si prefieres administrar las notificaciones por tu cuenta. Puedes usar
setHideNotificationIndicator
para ocultar el indicador predeterminado y mostrar el tuyo, o bien
setShowUnreadCountIndicator
para mostrar un recuento de notificaciones en la barra de estado.
Personaliza el color del círculo exterior del indicador de notificaciones no leídas con el método
setAccentColor
.
Nota: El indicador de notificaciones no leídas no se está habilitado en la versión de producción de Wear 2.8.0. Prueba tu implementación usando, como alternativa, el último emulador de Wear. A partir de la próxima versión para consumidores de Wear (versión 2.9.0), el indicador de notificaciones no leídas se mostrará de forma predeterminada.
Mejoras para la clase ComplicationDrawable
La clase
ComplicationDrawable
inicia una solicitud de permisos para una cara de reloj que se presiona cuando el sistema indica un valor
TYPE_NO_PERMISSION
(lo cual indica que la cara de reloj no tiene permisos para obtener los datos de complicación).
Además, la clase ComplicationDrawable
no se valida a sí misma cuando termina de cargar imágenes o cuando desaparece el destacado de un elemento presionado. Como respuesta a esta acción (por ej., para volver a dibujar tu cara de reloj), agrega un
Drawable.Callback
.
Errores conocidos
- Si activas el Modo teatro en el emulador, tal como se describe en Cómo cambiar la configuración de la pantalla y el brillo, el emulador puede bloquearse en ese modo. Para solucionar este problema, es necesario borrar los datos del emulador, consulta Cómo ejecutar y detener un emulador y borrar datos.
- Dentro de la ventana de un emulador para el nivel de API 25 o 26, el botón de encendido no funciona. Usa otros botones en vez del botón de encendido. En particular, para pasar al modo ambiente (como si el usuario cubriera la pantalla con la palma de la mano, por ejemplo), usa el botón de encendido en la barra de herramientas del emulador que está a la derecha de la pantalla. Para iniciar el selector de aplicaciones en el modo interactivo, usa el botón de inicio en la barra de herramientas del emulador.
- En la versión del emulador para China, si usas el método de entrada de escritura a mano, la pantalla puede comenzar a titilar. Luego, al hacer clic en el botón del teclado en pantalla, este bloquea la mitad de la pantalla.
18 de diciembre de 2017: Nuevo acceso a los Servicios de Google Play
Esta sección contiene información sobre nuevas funciones de Android Wear.
Migración desde la clase GoogleApiClient
A partir de la versión 11.8.0 de los Servicios de Google Play, se deben migrar las apps para Wear de la clase GoogleApiClient
y usar, en cambio, objetos de clientes de la API basados en la clase
GoogleApi
, así como la API de Tasks.
Nota: Esta actualización no se aplica a las apps de Android Wear para China, que generalmente usan la versión 10.2.0 de los Servicios de Google Play.
Para obtener más información, consulta lo siguiente:
- Cómo migrar apps de Wear a GoogleApi
- Accede a las APIs de Google
-
Wearable
class documentation
New components for connecting with Google Play services
When you use classes that extend the
GoogleApi
class, such as
DataClient
and
MessageClient
, the Google Play services SDK manages
connections to Google Play services for you. Apps that use these classes no longer need to
create and manage GoogleApiClient
objects. See the blog post
Moving Past GoogleApiClient for more information.
For the replacements of Wear-related components for connecting to Google
Play services, see
Replacements for deprecated components.
For releases and known issues related to
Google Play services, see the Release Notes for
Google Play services.
Note: If you compile your app with the latest version of
Google Play services, users are prompted to update their devices to that
latest version. However, a known issue for apps that target API version
26 might prevent users from being prompted to update their devices. This
issue is described in the Release Notes for
Google Play services.
2017-Oct-25 Ambient mode and more
This section contains information about new Android Wear features.
Android Support Library, v27.0.0: Features and bugfixes
The
27.0.0 version of the Android Support Library contains new features
for Wear. Review the following section.
New, preferred way to support ambient mode
Ambient mode lets a Wear app remain visible to a user when the
device goes idle. The Android Support Library has a new,
preferred way for your apps to use ambient mode. The Wear team seeks
developer feedback about this significant change.
Specifically, using the
AmbientMode
class offers the following benefits:
- The
Activity
subclasses in the Android Support Library, such as
FragmentActivity
. Functionality for
support library fragments is available.
-
Architecture components, which are
lifecycle aware.
- Better support for Google
Sign-In.
Manifest metadata constants in the Android Support Library
Constants for Android Wear apps, used in the meta-data
tag
in the Android Manifest file, are now
available in the Android Support Library. To use the constants—for
standalone apps, notification bridging mode, and watch face preview
images—add a reference to the following in the dependencies section of
the app module's build.gradle
file, which requires the latest
version of the Google Repository:
Groovy
implementation 'com.android.support:wear:27.0.0'
Kotlin
implementation("com.android.support:wear:27.0.0")
Action drawer updates
Updates are available to the
WearableActionDrawerView
class, which is used for creating a wearable
action drawer. In the latest version:
- When menu items are modified, the action drawer properly updates.
- If set for an action drawer, the title displays correctly.
Inflation of the RoundedDrawable class
Assuming an API level of at least 24, the
RoundedDrawable
class can now be inflated from a drawable XML file;
see
Custom drawables.
Wearable Support Library, v2.1.0: Enhancements and more
The
2.1.0 version of the Wearable Support Library includes the updates
described in the following section, and requires Android Support Library version 26.0.2 or
higher.
Supply burn-in-safe images for ambient mode
The
ComplicationDrawable
class lets you supply burn-in-safe
images for ambient mode. Specifically, a
ComplicationData
object's burn-in protection small
image field lets a watch face display a small image in the
SMALL_IMAGE
complication type, in ambient mode, when burn-in
protection is enabled.
Tap event updates for complications
The
ComplicationDrawable
class has a new onTap
method
that lets your watch face pass tap events to complications. The new
method builds on the existing functionality in which a tap on the watch
face triggers the
WatchFaceService.Engine.onTapCommand
method.
You can pass the coordinates to a ComplicationDrawable
with
an onTap
call to launch the action associated with the
ComplicationDrawable
that contains the tap coordinates. When
the new onTap
method is called, you can use a return value
of true
to see whether a ComplicationDrawable
launched the action associated with it.
Additionally, the setHighlightDuration
method sets the
duration for a complication to remain highlighted after the
onTap
method is called.
Progress bar for ranged value complications
If you prefer to draw your own progress bar for ranged value
complications in your watch face, use the
setRangedValueProgressHidden
method of the
ComplicationDrawable
class to hide the ranged value progress
that's drawn by the ComplicationDrawable
.
2017-Oct-02 Android Wear beta
Date: 2017-Oct-02
Build: OWP4.170828.008
Supported device: LG Watch Sport
This section contains known issues for an Android Wear beta release. For
information about the beta program or to enroll,
see the
Android beta page.
Known issues
- Google Pay and its cards do not function with this Android Wear beta
release.
- Even if cellular connectivity is on, it is turned off after the beta
is installed. As a workaround, turn on cellular connectivity after
the beta is installed by navigating to
Settings > Connectivity > Cellular.
- If notifications are erratic or missing after a beta update,
or contacts were not synced, factory-reset your watch.
- In the Wear tutorial, which starts after a watch is set up, some cards
behave erratically, but they can be dismissed normally with a swipe.
- On Android 6.0 phones, phone call notifications are not
received on the watch.
- Heart rate monitoring sometimes fails after an update. As a workaround,
reboot the watch.
- The OTA card in the stream sometimes fails to enable an installation.
As a workaround, navigate to
Settings > System > About > System Updates.