Die Wear OS-Datenschicht-APIs bestehen aus verschiedenen Arten von Clients, die sind nützlich für verschiedene Datentypen und bei unterschiedlichen Verbindungen. .
Auf dieser Seite werden die einzelnen Client-Typen vorgestellt. Sie enthält auch eine Tabelle, in der die die Funktionen der verschiedenen Kunden. Anhand dieser Informationen können Sie die für Ihre App am besten geeignet sind.
Datenclient
Mit einem DataClient
-Objekt können Sie in einem DataItem
- oder
Asset
:
Jede
DataItem
ist eine Informationseinheit, die übertragen und synchronisiert wird auf allen Geräten in der Nähe, die dem Nutzer gehören. EinDataItem
wird dauerhaft gespeichert, und Ihr Gerät kann die Inhalte lesen, bis das Datenelement gelöscht wird.Ein
Asset
ist für größere Datennutzlasten wie Bilder oder Mediendateien vorgesehen.
Nachrichtenclient
Ein MessageClient
-Objekt kann Nachrichten senden und eignet sich für Remote-Prozeduren.
Aufrufe (RPC), z. B. die Steuerung der App-Version über ein Wear OS-Gerät
die auf einem Handheld-Gerät installiert ist.
Nachrichten eignen sich hervorragend für einseitige Anfragen über sendMessage()
oder für
Anfrage-und-Antwort-Kommunikationsmodell mit sendRequest()
Anders als bei Daten
müssen die Knoten mit dem Netzwerk verbunden sein,
um Nachrichten zu senden.
Die Methode sendMessage()
ist eine optimale Bereitstellung an den Remote-Knoten.
ohne integrierten Wiederholungsmechanismus. Wenn das Zielgerät
die Verbindung getrennt wird, bevor die Netzwerkübertragung beginnt, gibt die Methode
TARGET_NODE_NOT_CONNECTED
Channel client
Ein ChannelClient
-Objekt bietet eine streamorientierte Kommunikation zwischen
Geräte. Ein Kanal ist eine bidirektionale Kommunikationsleitung zwischen zwei Knoten.
Dies ist nützlich für folgende Anwendungsfälle:
- Datendateien zwischen zwei oder mehr verbundenen Geräten übertragen, wenn das Internet online ist
ist nicht verfügbar.
ChannelClient
spart Speicherplatz überDataClient
, wodurch erstellt eine Kopie der Assets auf dem lokalen Gerät vor der Synchronisierung mit verbundenen Geräten. - Sie können Dateien, die zu groß für das Senden sind, zuverlässig mit einem
MessageClient
senden. - Überträgt gestreamte Daten, z. B. Sprachdaten vom Mikrofon.
Nachdem du einen Kanal geöffnet hast, kannst du Daten in einem fortlaufenden Byte senden und empfangen
anstelle der einzelnen DataItem
-Einheiten, die Datenkunden benötigen.
Sie sind für die Verwaltung des Datenflusses und die Aufrechterhaltung der Konsistenz der Daten verantwortlich. Channelclients bieten nicht die gleiche Stufe an automatischer Datensynchronisierung wie Datenkunden.
Kundenvergleich
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? |
---|---|---|---|---|
Datenclient | Daten werden auf unbestimmte Zeit gespeichert | Ja (verwenden
Asset
Objekte) |
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 Schreibzugriff |
Nachrichtenclient | Keine Persistenz und keine Wiederholung | Nein | Bluetooth bevorzugt, kann aber WLAN verwenden, falls dies der einzige Verbindung verfügbar | Nein |
Channel client | Keine Persistenz (verbindungsorientiert) | Ja | Bluetooth bevorzugt, kann aber WLAN verwenden, falls dies der einzige Verbindung verfügbar | Nein |