Elige un tipo de cliente

Las APIs de Data Layer de Wear OS constan de varios tipos diferentes de clientes, son útiles para diferentes tipos de datos y durante diferentes tipos de condiciones.

En esta página se presenta cada tipo de cliente y se incluye una tabla que compara los capacidades de los diferentes clientes. Con esta información, puedes seleccionar el conjunto de tipos de clientes más adecuado para tu app.

Cliente de datos

Un objeto DataClient te permite leer o escribir en un DataItem. Asset:

  • Cada DataItem es una unidad de información que se transmite y sincroniza en todos los dispositivos cercanos que posea el usuario. Un DataItem se almacena de forma persistente, y tu dispositivo podrá leer su contenido hasta que se borre el elemento de datos.

  • Un Asset está diseñado para cargas útiles de datos más grandes, como imágenes o archivos multimedia.

Cliente de mensajes

Un objeto MessageClient puede enviar mensajes y es útil para el procedimiento remoto. llamadas RPC), como usar un dispositivo Wear OS para controlar la versión de tu app que se instala en un dispositivo de mano.

Los mensajes son ideales para solicitudes unidireccionales con sendMessage() o para una de solicitud y respuesta con sendRequest(). A diferencia de los datos Los clientes de mensajes necesitan que los nodos estén conectados a la red para para enviar mensajes.

El método sendMessage() es el mejor esfuerzo para entregar al nodo remoto. este no contiene ningún mecanismo de reintento integrado. Si el dispositivo de destino se desconecta antes de comenzar la transferencia de red, el método TARGET_NODE_NOT_CONNECTED

Cliente del canal

Un objeto ChannelClient proporciona una comunicación orientada a la transmisión entre dispositivos. Un canal es una canalización de comunicación bidireccional entre dos nodos, lo que es útil para casos de uso como los siguientes:

  • Transfiere archivos de datos entre dos o más dispositivos conectados cuando se conecta a Internet no está disponible. ChannelClient ahorra espacio en el disco en comparación con DataClient, lo que crea una copia de los recursos en el dispositivo local antes de sincronizarse conectados.
  • Puedes enviar de manera confiable un archivo demasiado grande como para enviarlo con un MessageClient.
  • Transfiere datos transmitidos, como datos de voz desde el micrófono.

Después de abrir un canal, puedes enviar y recibir datos en un byte en lugar de las unidades DataItem discretas que requieren los clientes de datos.

Eres responsable de administrar el flujo de datos y de mantener la coherencia de los datos. Los clientes de canales no ofrecen el mismo nivel de sincronización automática de datos. que hacen los clientes de datos.

Comparación de clientes

En la siguiente tabla, se comparan las capacidades de los diferentes clientes:

Tipo de cliente Persistencia de datos ¿Admite datos de más de 100 KB? Red que se usará ¿Funciona sin conexión?
Cliente de datos Los datos se conservan indefinidamente Sí (usar Asset objetos) Se prefiere Bluetooth. Se crea una copia de seguridad de los datos en la nube. si el Bluetooth está disponible, esta copia de seguridad se realiza de forma asíncrona Sí, para lectura y escritura
Cliente de mensajes Sin persistencia ni reintento No Se prefiere el Bluetooth, pero se puede utilizar Wi-Fi si es el único tipo de conexión disponible No
Cliente de canal Sin persistencia (orientado a la conexión) Se prefiere el Bluetooth, pero se puede utilizar Wi-Fi si es el único tipo de conexión disponible No