Clienttyp auswählen

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. Ein DataItem 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 über DataClient, 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