API lapisan data Wear OS terdiri dari beberapa jenis klien, 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.
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 di sekitar 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 yang terhubung ke jaringan agar
dapat mengirim pesan.
Metode sendMessage()
adalah upaya terbaik untuk dikirim ke node jarak jauh, dan
tidak berisi mekanisme percobaan ulang bawaan. Jika perangkat target
terputus sebelum transfer jaringan dimulai, metode akan menampilkan
TARGET_NODE_NOT_CONNECTED
.
Klien saluran
Objek ChannelClient
menyediakan komunikasi berorientasi streaming antar-
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 melaluiDataClient
, 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
kontinu, bukan unit DataItem
terpisah yang diperlukan klien data.
Anda bertanggung jawab untuk mengelola alur data dan menjaga konsistensi data. Klien saluran tidak menawarkan tingkat sinkronisasi data otomatis yang sama dengan 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 objek
Asset ) |
Bluetooth lebih disukai. Data dicadangkan ke cloud; jika Bluetooth tersedia, pencadangan ini dilakukan secara asinkron | Ya, untuk operasi baca dan tulis |
Klien pesan | Tidak ada persistensi dan tidak ada percobaan ulang | Tidak | Bluetooth lebih disukai, tetapi dapat menggunakan Wi-Fi jika itu satu-satunya jenis koneksi yang tersedia | Tidak |
Klien saluran | Tidak ada persistensi (berorientasi koneksi) | Ya | Bluetooth lebih disukai, tetapi dapat menggunakan Wi-Fi jika itu satu-satunya jenis koneksi yang tersedia | Tidak |