Pilih jenis klien

API lapisan data Wear OS terdiri dari beberapa jenis klien yang berbeda, yang berguna untuk berbagai jenis data dan selama kondisi konektivitas yang berbeda.

Halaman ini memperkenalkan setiap jenis klien, dan menyertakan tabel yang membandingkan kemampuan berbagai klien. Dengan menggunakan informasi ini, Anda dapat memilih kumpulan jenis klien yang paling sesuai untuk aplikasi Anda.

Kapan menggunakan Data Layer API

Gunakan Data Layer API saat interaksi hanya antara jam tangan lokal dan ponsel lokal. Untuk contoh mendetail, lihat Kasus penggunaan umum Lapisan Data.

Klien data

Objek DataClient memungkinkan Anda membaca atau menulis ke DataItem atau Asset:

  • Setiap DataItem adalah unit informasi yang disiarkan dan disinkronkan di semua perangkat terdekat yang dimiliki pengguna. DataItem disimpan secara persisten, dan perangkat Anda dapat membaca kontennya hingga item data dihapus.

  • Asset ditujukan untuk payload data yang lebih besar, seperti gambar atau file media.

Klien pesan

Objek MessageClient dapat mengirim pesan dan cocok untuk panggilan prosedur jarak jauh (RPC), seperti menggunakan perangkat Wear OS untuk mengontrol versi aplikasi yang diinstal di perangkat genggam.

Pesan sangat cocok untuk permintaan satu arah menggunakan sendMessage(), atau untuk model komunikasi permintaan dan respons menggunakan sendRequest(). Tidak seperti klien data, klien pesan memerlukan node untuk terhubung ke jaringan agar dapat mengirim pesan.

Metode sendMessage() adalah upaya terbaik untuk mengirim ke node jarak jauh, dan tidak berisi mekanisme coba lagi bawaan. Jika perangkat target terputus sebelum transfer jaringan dimulai, metode ini akan menampilkan TARGET_NODE_NOT_CONNECTED.

Klien saluran

Objek ChannelClient menyediakan komunikasi berorientasi streaming antara perangkat. Saluran adalah saluran komunikasi dua arah antara dua node, yang berguna untuk kasus penggunaan seperti berikut:

  • Mentransfer file data antara dua perangkat yang terhubung atau lebih saat internet tidak tersedia. ChannelClient menghemat ruang disk melalui DataClient, yang membuat salinan aset di perangkat lokal sebelum disinkronkan dengan perangkat yang terhubung.
  • Andal dalam mengirim file yang terlalu besar untuk dikirim menggunakan MessageClient.
  • Mentransfer data streaming, seperti data suara dari mikrofon.

Setelah membuka saluran, Anda dapat mengirim dan menerima data dalam aliran byte berkelanjutan, bukan unit DataItem terpisah yang diperlukan klien data.

Anda bertanggung jawab untuk mengelola aliran data dan menjaga data tetap konsisten. Klien saluran tidak menawarkan tingkat sinkronisasi data otomatis yang sama seperti yang dilakukan klien data.

Perbandingan klien

Tabel berikut membandingkan kemampuan berbagai klien:

Jenis klien Persistensi data Mendukung data yang lebih besar dari 100 KB? Jaringan yang akan digunakan Bekerja secara offline?
Klien data Data dipertahankan tanpa batas waktu Ya (gunakan Asset objek) Bluetooth lebih disukai. Data dicadangkan ke cloud; jika Bluetooth is tersedia, pencadangan ini dilakukan secara asinkron Ya, untuk baca dan tulis
Klien pesan Tidak ada persistensi dan tidak ada percobaan ulang Tidak Bluetooth lebih disukai, tetapi dapat menggunakan Wi-Fi jika hanya jenis koneksi yang tersedia Tidak
Klien saluran Tidak ada persistensi (berorientasi koneksi) Ya Bluetooth lebih disukai, tetapi dapat menggunakan Wi-Fi jika hanya jenis koneksi yang tersedia Tidak

Untuk informasi lebih lanjut tentang cara menggunakan Data Layer API, lihat Panduan sinkronisasi data guide. Untuk pertimbangan daya saat menggunakan Data Layer API, lihat Panduan menghemat daya.