Übersicht über die Data Layer API

<ph type="x-smartling-placeholder">
</ph> Der cloudbasierte Knoten wird von einem Google-eigenen Server gesteuert.
Abbildung 1: Ein Beispiel für ein Netzwerk von Knoten mit Handheld- und Wear OS-Geräte

Die Wearable Data Layer API, die Teil der Google Play-Dienste ist, bietet Kommunikationskanal zwischen Wearable-Geräten (wie Smartwatches) und verbundenen Handheld-Geräten, wie etwa Smartphones. Es ist eine Möglichkeit, Daten zwischen den Geräten zu übertragen.

Hinweis:Diese API ist nur auf Wear OS-Smartwatches und gekoppelten Android-Geräten. Bei Wear OS-Smartwatches, die mit iOS-Smartphones gekoppelt sind, können Apps andere cloudbasierte APIs abfragen, wenn eine Internetverbindung verfügbar ist. Weitere Informationen Informationen zu diesen anderen APIs erhalten Sie unter Netzwerkzugriff und Synchronisierung aktiviert Wear OS

Achtung:Die Datenschicht-APIs wurden für Kommunikation zwischen Handhelds und Wearables – die einzigen APIs, die Sie um die Kommunikation zwischen diesen Geräten einzurichten. Versuchen Sie beispielsweise nicht, Low-Level-Sockets öffnen, um einen Kommunikationskanal zu erstellen.

Gängige Anwendungsfälle

Die Data Layer API ist besonders nützlich für Fitness- und Medienanwendungsfälle.

Fitness-Apps

Das Senden von Trainingsdaten von einer Wear OS-App an mobile Fitness-Apps die von einer Uhr erfassten Trainingsdaten in eine mobile App oder Gesundheit Verbinden. Wenn Sie die Data Layer API zum Übertragen von Daten verwenden, verwenden Sie einen Message Client, um Trainingsdaten von der Wear OS App an die mobile App zu senden um in Health Connect zu schreiben.

Beim Training zu Hause Live-Daten auf das Mobilgerät streamen

Ein gängiges Trainingsszenario für zu Hause ist das Streamen von Herzfrequenzdaten von einem Wear OS-Gerät. Gerät an ein Mobilgerät und zeigt dem Nutzer aktuelle Informationen zur Herzfrequenz an. auf dem Bildschirm ihres Mobilgeräts. Verwende zum Streamen dieser Daten einen Kanalclient.

Medien-Apps

Um einen Mediaplayer durch Pausieren/Fortsetzen/Starten/Beenden über die mit einem Nachrichtenclient zum Smartphone.

Optionen für die Kommunikation

Daten werden auf eine der folgenden Arten übertragen:

  1. Direkt, wenn eine Bluetooth-Verbindung zwischen dem Wear OS-Gerät und ein anderes Gerät.
  2. Über ein verfügbares Netzwerk wie LTE oder WLAN mit einem Netzwerkknoten auf den Google-Servern als Vermittler.

Alle Datenschichtclients können Daten entweder über Bluetooth oder die in die Cloud ein, je nachdem, welche Verbindungen für die Geräte verfügbar sind. Davon ausgehen, dass Daten die mithilfe der Datenschicht übertragen werden, irgendwann Google-eigene Server verwenden.

Bluetooth

Wenn Geräte über Bluetooth verbunden sind, verwendet die Datenschicht diese Verbindung. Es gibt einen einzigen verschlüsselten Kanal zwischen den Geräten, der Standard- Bluetooth-Verschlüsselung, verwaltet von Google Play-Diensten

Cloud

Daten werden automatisch über Google Cloud geleitet, wenn Bluetooth nicht verfügbar ist. Alle über Google Cloud übertragenen Daten sind mit Ende-zu-Ende-Verschlüsselung geschützt.

Sicherheit der Kommunikation

Für Google Play-Dienste gelten die folgenden Einschränkungen, um für mehr Sicherheit Kommunikation zwischen der auf einem Wear OS-Gerät installierten App und derselben App auf einem Handheld-Gerät in der Nähe installiert ist:

  • Der Paketname muss auf allen Geräten übereinstimmen.
  • Die Signatur des Pakets muss auf allen Geräten übereinstimmen.

Keine anderen Apps haben Zugriff auf die Daten, unabhängig vom Verbindungstyp.

Einrichten

Für die Wearable Data Layer API gelten die folgenden Abhängigkeiten:

Füge die folgende Abhängigkeit in die build.gradle-Datei deines Wear-Moduls ein:

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

Erleichtern der ersten Kopplung

Horologe bietet verschiedene Hilfsbibliotheken für Plattform-APIs. Sie umfasst eine Datenschichtbibliothek, über die eine Verbindung zwischen einem Mobilgerät und einem Wear OS-Gerät. Außerdem bietet es praktische APIs, um Folgendes zu tun:

  • Installiere die App auf dem anderen Gerät.
  • Starten Sie die App auf dem anderen Gerät.
  • Eine bestimmte Aktivität auf dem anderen Gerät starten
  • Starte die Companion-App.

Auf die Datenschicht zugreifen

Verwenden Sie zum Aufrufen der Data Layer API die Klasse Wearable, um Instanzen von Die verschiedenen Clientklassen wie DataClient und MessageClient

Weitere Informationen finden Sie im DataLayer-Beispiel.

Minimalen Client verwenden

Im folgenden Beispielcode wird gezeigt, wie Sie einen Client erstellen:

Kotlin

val dataClient: DataClient = Wearable.getDataClient(context)

Java

DataClient dataClient = Wearable.getDataClient(context);

Der Kontext kann ein beliebiger gültiger Android-Kontext sein. Wenn Sie die API in Den Bereich eines Activity, verwenden Sie die Methode getDataClient() der Wearable . Bestimmte Interaktionen werden dann als Dialogfelder Benachrichtigungen erhalten, etwa wenn der Nutzer aufgefordert wird, seine Google-Version Google Play-Dienste.

Standardmäßig erfolgen Rückrufe an Listener im Haupt-UI-Thread der App. Muss für Callbacks in einem anderen Thread verwenden, WearableOptions eine benutzerdefinierte Looper angeben:

Kotlin

runBlocking {
    Wearable.getDataClient(context, options)
}

Java

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

Weitere Informationen finden Sie in der Referenz zu WearableOptions.Builder.

Clientinstanzen nach Bedarf neu erstellen

Wearable API-Clients wie DataClient und MessageClient sind kostengünstig zu erstellen. Anstatt die Kundschaft an sich zu binden, erstellen Sie sie als Sie brauchen sie in dem Stil, der zu Ihrer App passt.

Der Clientstatus, z. B. die Gruppe registrierter Listener, wird für alle und bleiben erhalten, wenn die Google Play-Dienste aktualisiert werden, während eine App ausgeführt wird.