Wear OS veri katmanı API'leri, farklı veri türleri ve farklı bağlantı koşulları için kullanışlı olan birkaç farklı istemci türünden oluşur.
Bu sayfada her istemci türü tanıtılmakta ve farklı istemcilerin özelliklerini karşılaştıran bir tablo yer almaktadır. Bu bilgileri kullanarak uygulamanız için en uygun istemci türlerini seçebilirsiniz.
Veri Katmanı API'si ne zaman kullanılır?
Etkileşim yalnızca yerel saat ile yerel telefon arasında olduğunda Data Layer API'yi kullanın. Ayrıntılı örnekler için Veri katmanının yaygın kullanım alanları başlıklı makaleyi inceleyin.
Veri istemcisi
DataClient nesnesi, DataItem veya Asset okumanıza ya da yazmanıza olanak tanır:
Her
DataItem, kullanıcının sahip olduğu tüm yakındaki cihazlar arasında yayınlanan ve senkronize edilen bir bilgi birimidir.DataItemkalıcı olarak depolanır ve cihazınız, veri öğesi silinene kadar içeriğini okuyabilir.Asset, resim veya medya dosyaları gibi daha büyük veri yükleri için kullanılır.
Mesaj istemcisi
MessageClient nesnesi mesaj gönderebilir ve uzak yordam çağrıları (RPC) için uygundur. Örneğin, el cihazında yüklü olan uygulamanızın sürümünü kontrol etmek için Wear OS cihazı kullanabilirsiniz.
Mesajlar, sendMessage() kullanan tek yönlü istekler veya sendRequest() kullanan istek ve yanıt iletişim modeli için idealdir. Veri istemcilerinin aksine, mesaj istemcilerinin mesaj gönderebilmesi için düğümlerin ağa bağlı olması gerekir.
sendMessage() yöntemi, uzak düğüme teslimat için en iyi çabayı gösterir 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ış odaklı iletişim sağlar. Kanal, iki düğüm arasında çift yönlü bir iletişim kanalıdır.
Aşağıdaki gibi kullanım alanları için kullanışlıdır:
- İnternet bağlantısı olmadığında iki veya daha fazla bağlı cihaz arasında veri dosyası aktarma
ChannelClient, bağlı cihazlarla senkronizasyon yapmadan önce yerel cihazda öğelerin bir kopyasını oluşturanDataClient'e kıyasla disk alanından tasarruf sağlar. MessageClientkullanarak gönderilemeyecek kadar büyük bir dosyayı güvenilir bir şekilde gönderin.- Mikrofondan gelen ses verileri gibi akış verilerini aktarma
Bir kanal açtıktan sonra, veri istemcilerinin gerektirdiği ayrı DataItem birimleri yerine sürekli bir bayt akışında veri gönderip alabilirsiniz.
Veri akışını yönetmek ve verilerin tutarlılığını sağlamak sizin sorumluluğunuzdadır. Kanal istemcileri, veri istemcileriyle aynı düzeyde otomatik veri senkronizasyonu sunmaz.
Müşteri 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 buluta yedeklenir. Bluetooth varsa bu yedekleme eşzamansız olarak yapılır. | Evet, hem okuma hem de yazma için |
| Mesaj istemcisi | Kalıcılık ve yeniden deneme yok | Hayır | Bluetooth tercih edilir ancak mevcut tek bağlantı türü buysa kablosuz bağlantı kullanılabilir. | Hayır |
| Kanal müşterisi | Kalıcılık yok (bağlantı odaklı) | Evet | Bluetooth tercih edilir ancak mevcut tek bağlantı türü buysa kablosuz bağlantı kullanılabilir. | Hayır |
Veri Katmanı API'leriyle çalışma hakkında daha fazla bilgi için Verileri senkronize etme kılavuzuna bakın. Data Layer API'leri kullanırken güçle ilgili dikkat edilmesi gereken noktalar için Güç tasarrufu kılavuzuna bakın.