Die Wear OS-Data-Layer-APIs bestehen aus verschiedenen Clienttypen, die für unterschiedliche Datentypen und bei unterschiedlichen Verbindungsbedingungen nützlich sind.
Auf dieser Seite werden die einzelnen Clienttypen vorgestellt. Außerdem finden Sie hier eine Tabelle, in der die Funktionen der verschiedenen Clients verglichen werden. Anhand dieser Informationen können Sie die Clienttypen auswählen, die für Ihre App am besten geeignet sind.
Wann sollte die Data Layer API verwendet werden?
Verwenden Sie die Data Layer API, wenn die Interaktion ausschließlich zwischen der lokalen Smartwatch und dem lokalen Smartphone erfolgt. Detaillierte Beispiele finden Sie unter Häufige Anwendungsfälle für die Datenschicht.
Datenclient
Mit einem DataClient-Objekt können Sie Daten in eine DataItem oder Asset lesen oder schreiben:
Jedes
DataItemist eine Informationseinheit, die an alle Geräte in der Nähe, die einem Nutzer gehören, gesendet und synchronisiert wird. EinDataItemwird dauerhaft gespeichert und Ihr Gerät kann seinen Inhalt lesen, bis das Datenelement gelöscht wird.Ein
Assetist für größere Daten-Payloads wie Bilder oder Mediendateien vorgesehen.
Messaging-Client
Ein MessageClient-Objekt kann Nachrichten senden und eignet sich für Remote Procedure Calls (RPC), z. B. um mit einem Wear OS-Gerät die Version Ihrer App zu steuern, die auf einem Mobilgerät installiert ist.
Nachrichten eignen sich hervorragend für Einweganfragen mit sendMessage() oder für ein Anfrage-Antwort-Kommunikationsmodell mit sendRequest(). Im Gegensatz zu Datenclients müssen Nachrichtenclients mit dem Netzwerk verbunden sein, um Nachrichten senden zu können.
Die Methode sendMessage() ist ein Best-Effort-Ansatz für die Zustellung an den Remote-Knoten und enthält keinen integrierten Wiederholungsmechanismus. Wenn die Verbindung zum Zielgerät getrennt wird, bevor die Netzwerkübertragung beginnt, gibt die Methode TARGET_NODE_NOT_CONNECTED zurück.
Channel-Client
Ein ChannelClient-Objekt ermöglicht die streamorientierte Kommunikation zwischen Geräten. Ein Kanal ist eine bidirektionale Kommunikationsleitung zwischen zwei Knoten, die für Anwendungsfälle wie die folgenden nützlich ist:
- Daten zwischen zwei oder mehr verbundenen Geräten übertragen, wenn keine Internetverbindung besteht.
ChannelClientspart im Vergleich zuDataClientSpeicherplatz, da beiDataClienteine Kopie der Assets auf dem lokalen Gerät erstellt wird, bevor die Synchronisierung mit verbundenen Geräten erfolgt. - Dateien, die zu groß für den Versand per
MessageClientsind, zuverlässig senden. - Übertragen von gestreamten Daten, z. B. Sprachdaten vom Mikrofon
Nachdem Sie einen Channel geöffnet haben, können Sie Daten in einem kontinuierlichen Bytestream senden und empfangen, anstatt in den diskreten DataItem-Einheiten, die Datenclients benötigen.
Sie sind für die Verwaltung des Datenflusses und die Konsistenz der Daten verantwortlich. Channel-Clients bieten nicht dasselbe Maß an automatischer Datensynchronisierung wie Daten-Clients.
Clientvergleich
In der folgenden Tabelle werden die Funktionen der verschiedenen Clients verglichen:
| Clienttyp | Datenpersistenz | Werden Daten unterstützt, die größer als 100 KB sind? | Zu verwendendes Netzwerk | Funktioniert offline? |
|---|---|---|---|---|
| Data Client | Daten werden auf unbestimmte Zeit gespeichert. | Ja (Asset-Objekte verwenden) |
Bluetooth bevorzugt. Daten werden in der Cloud gesichert. Wenn Bluetooth verfügbar ist, erfolgt diese Sicherung asynchron. | Ja, sowohl für Lese- als auch für Schreibvorgänge |
| Messaging-Client | Keine Persistenz und kein Wiederholungsversuch | Nein | Bluetooth wird bevorzugt, aber WLAN kann verwendet werden, wenn es die einzige verfügbare Verbindung ist. | Nein |
| Channel-Client | Keine Persistenz (verbindungsorientiert) | Ja | Bluetooth wird bevorzugt, aber WLAN kann verwendet werden, wenn es die einzige verfügbare Verbindung ist. | Nein |
Weitere Informationen zur Arbeit mit den Data Layer APIs finden Sie im Leitfaden Daten synchronisieren. Informationen zum Stromverbrauch bei Verwendung der Data Layer APIs finden Sie im Leitfaden Strom sparen.