Wear OS veri katmanı API'leri, farklı veri türleri ve farklı bağlantı koşulları için yararlı olan birkaç farklı istemci türünden oluşur.
Bu sayfada her müşteri türü tanıtılır ve farklı müşterilerin özelliklerini karşılaştıran bir tablo bulunur. Bu bilgileri kullanarak uygulamanız için en uygun istemci türü grubunu seçebilirsiniz.
Veri istemcisi
DataClient
nesnesi, DataItem
veya Asset
'e okuma veya yazma yapmanıza olanak tanır:
Her
DataItem
, kullanıcının sahip olduğu tüm yakındaki cihazlarda yayınlanan ve senkronize edilen bir bilgi birimidir.DataItem
kalıcı olarak saklanır ve veri öğesi silinene kadar cihazınız içeriğini okuyabilir.Asset
, resim veya medya dosyaları gibi daha büyük veri yükü için kullanılır.
Mesaj istemcisi
MessageClient
nesnesi mesaj gönderebilir ve uzaktan prosedür çağrıları (RPC) için uygundur. Örneğin, uygulamanızın el cihazına yüklenmiş sürümünü kontrol etmek için Wear OS cihazı kullanabilirsiniz.
İletiler, sendMessage()
kullanan tek yönlü istekler veya sendRequest()
kullanan istek ve yanıt iletişim modeli için mükemmeldir. Veri istemcilerinin aksine, mesaj istemcilerinin mesaj gönderebilmesi için düğümlerin ağa bağlı olması gerekir.
sendMessage()
yöntemi, uzak düğüme yayınlama işlemi için en iyi sonucu hedefleyen bir yöntemdir ve yerleşik bir yeniden deneme mekanizması içermez. Ağ aktarımı başlamadan önce hedef cihazın bağlantısı kesilirse yöntem TARGET_NODE_NOT_CONNECTED
değerini döndürür.
Kanal istemcisi
ChannelClient
nesnesi, cihazlar arasında akışa yönelik iletişim sağlar. Kanal, iki düğüm arasındaki iki yönlü bir iletişim borusu olup aşağıdaki gibi kullanım alanları için yararlıdır:
- İnternet bağlantısı olmadığında iki veya daha fazla bağlı cihaz arasında veri dosyaları aktarın.
ChannelClient
, bağlı cihazlarla senkronize edilmeden önce öğelerin yerel cihazdaki kopyasını oluşturanDataClient
'e kıyasla disk alanından tasarruf sağlar. MessageClient
kullanarak gönderilemeyecek kadar büyük bir dosyayı güvenle gönderin.- Mikrofondan alınan ses verileri gibi aktarılan verileri aktarma.
Bir kanal açtıktan sonra, veri istemcilerinin ihtiyaç duyduğu ayrı DataItem
birimleri yerine verileri kesintisiz bir bayt akışıyla gönderip alabilirsiniz.
Veri akışını yönetmekten ve verilerin tutarlı kalmasını sağlamaktan siz sorumlusunuz. Kanal istemcileri, veri istemcilerinin sunduğu otomatik veri senkronizasyonu düzeyini sunmaz.
İstemci karşılaştırması
Aşağıdaki tabloda farklı istemcilerin özellikleri karşılaştırılmaktadır:
İstemci türü | Veri kalıcılığı | 100 KB'tan büyük verileri destekliyor mu? | Kullanılacak ağ | Çevrimdışı çalışır mı? |
---|---|---|---|---|
Veri istemcisi | Veriler süresiz olarak saklanır | Evet (Asset nesnelerini kullanın) |
Bluetooth tercih edilir. Veriler bulutta yedeklenir. Bluetooth kullanılabiliyorsa bu yedekleme işlemi eşzamanlı olarak yapılmaz. | Evet, hem okuma hem de yazma için |
Mesaj istemcisi | Devamlılık ve yeniden deneme yok | Hayır | Bluetooth tercih edilir ancak mevcut tek bağlantı türü kablosuz ağsa kablosuz ağ kullanılabilir | Hayır |
Kanal istemcisi | Kalıcılık yok (bağlantı odaklı) | Evet | Bluetooth tercih edilir ancak mevcut tek bağlantı türü kablosuz ağsa kablosuz ağ kullanılabilir | Hayır |