Présentation de l'API Data Layer

Le nœud dans le cloud est contrôlé par un serveur appartenant à Google
Figure 1. Un exemple de réseau de nœuds avec des appareils appareils Wear OS.

L'API Wearable Data Layer, qui fait partie des services Google Play, fournit un de communication entre les accessoires connectés (comme les montres connectées) et appareils portables connectés (généralement des smartphones) C'est un moyen de synchroniser et pour transférer des données entre les appareils.

Remarque:Cette API n'est disponible que sur les montres Wear OS et appareils Android associés. Pour les montres Wear OS associées à des téléphones iOS, les applications peuvent interroger d'autres API dans le cloud si une connexion Internet est disponible. Pour plus des informations sur ces API, consultez Accès au réseau et synchronisation activée Wear OS

Attention:Comme les API de couche de données sont conçues pour la communication entre les appareils portables et les accessoires connectés, ce sont les seules API que vous pouvez utiliser pour établir la communication entre ces appareils. Par exemple, n'essayez pas de ouvrir des sockets de bas niveau pour créer un canal de communication.

Cas d'utilisation courants

L'API Data Layer est particulièrement utile pour les cas d'utilisation liés au fitness et aux contenus multimédias.

Applis de fitness

L'envoi de données d'exercice depuis l'application Wear OS vers l'application mobile Les applications de remise en forme ont souvent besoin écrire les données d'exercice enregistrées par une montre dans une application mobile ou dans Santé Connect. Si vous utilisez l'API Data Layer pour transférer des données, utilisez un Client de messagerie pour envoyer des données d'exercice depuis l'application Wear OS vers l'application mobile pour écrire dans Santé Connect.

Diffuser des données en direct sur l'appareil mobile pendant une séance de sport à la maison

Un scénario d'entraînement courant à la maison consiste à diffuser en streaming des données de fréquence cardiaque depuis une montre Wear OS. appareil à un appareil mobile et montrant à l'utilisateur des informations à jour sur sa fréquence cardiaque sur l'écran de leur appareil mobile. Pour diffuser ces données, utilisez un client de canal.

Applications multimédias

Pour contrôler un lecteur multimédia par le biais d'une action de mise en pause, de reprise, de démarrage ou de fin depuis montre sur le téléphone, utilisez un client de messagerie.

Options de communication

Les données sont transférées de l'une des manières suivantes:

  1. Directement, lorsqu'une connexion Bluetooth est établie entre un appareil Wear OS et un autre appareil.
  2. Via un réseau disponible, tel que LTE ou Wi-Fi, via un sur les serveurs de Google en tant qu'intermédiaire.

Tous les clients de la couche de données peuvent échanger des données via le Bluetooth ou à l'aide du en fonction des connexions disponibles pour les appareils. Supposons que les données transmises à l'aide de la couche de données peuvent à un moment donné utiliser des serveurs appartenant à Google.

Bluetooth

Lorsque les appareils sont connectés via le Bluetooth, la couche de données utilise cette connexion. Il n'existe qu'un seul canal chiffré entre les deux appareils, Chiffrement Bluetooth géré par les services Google Play.

Cloud

Les données sont automatiquement acheminées via Google Cloud lorsque le Bluetooth n'est pas disponible. Toutes les données transférées via Google Cloud sont chiffrées de bout en bout.

Sécurité des communications

Les services Google Play appliquent les restrictions suivantes pour renforcer la sécurité la communication entre l'application installée sur un appareil Wear OS et la même application installé sur un appareil portable à proximité:

  • Le nom du package doit être identique sur tous les appareils.
  • La signature du package doit être identique sur tous les appareils.

Aucune autre application n'a accès aux données, quel que soit le type de connexion.

Configuration

L'API Wearable Data Layer dispose des dépendances suivantes :

Incluez la dépendance suivante dans le fichier build.gradle de votre module Wear:

dependencies {
    ...
    implementation("com.google.android.gms:play-services-wearable:18.2.0")
}

Faciliter le processus d'association initial

Horologist fournit plusieurs bibliothèques d'aide en plus des API de la plate-forme. Il inclut une bibliothèque de couches de données qui permet d'établir une connexion entre un appareil mobile et un appareil Wear OS. De plus, il fournit des API pratiques pour effectuer les opérations suivantes:

  • Installez l'application sur l'autre appareil.
  • Lancez l'application sur l'autre appareil.
  • Lancez une activité spécifique sur l'autre appareil.
  • Lancez l'application associée.

Accéder à la couche de données

Pour appeler l'API Data Layer, utilisez la classe Wearable afin d'obtenir des instances de les différentes classes de client, telles que DataClient et MessageClient.

Pour en savoir plus, consultez l'exemple DataLayer.

Utiliser un client minimal

Pour créer un client, consultez l'exemple de code suivant:

Kotlin

val dataClient: DataClient = Wearable.getDataClient(context)

Java

DataClient dataClient = Wearable.getDataClient(context);

Le contexte peut correspondre à n'importe quel contexte Android valide. Si vous utilisez l'API dans le champ d'application d'un Activity, utilisez la méthode getDataClient() de Wearable ; . Certaines interactions peuvent ainsi apparaître sous forme de boîtes de dialogue plutôt que les notifications, par exemple lorsqu'il est invité à mettre à jour sa version de Services Play.

Par défaut, les rappels des écouteurs sont effectués sur le thread UI principal de l'application. Pour avoir des rappels effectués sur un autre thread, utilisez un objet WearableOptions pour spécifiez un Looper personnalisé:

Kotlin

runBlocking {
    Wearable.getDataClient(context, options)
}

Java

WearableOptions options = new WearableOptions.Builder().setLooper(myLooper).build();
DataClient dataClient = Wearable.getDataClient(context, options);

Pour en savoir plus, consultez la documentation de référence sur WearableOptions.Builder.

Recréer les instances de client si nécessaire

Les clients de l'API Wearable, tels que DataClient et MessageClient, sont peu coûteux à créer. Au lieu de conserver les clients, recréez-les dont vous avez besoin, en utilisant le style qui convient à votre application.

L'état du client, tel que l'ensemble des écouteurs enregistrés, est partagé entre toutes et est conservée si les services Google Play sont mis à jour alors qu'une application en cours d'exécution.