Ringkasan Data Layer API

Node berbasis cloud dikontrol oleh server milik Google
Gambar 1. Contoh jaringan {i>node<i} dengan perangkat genggam dan Perangkat Wear OS.

Data Layer API Wearable, yang merupakan bagian dari layanan Google Play, menyediakan saluran komunikasi antar perangkat {i>wearable<i} (seperti {i>smartwatch<i}) dan perangkat genggam yang terhubung (biasanya {i>smartphone<i}). Ini adalah cara untuk menyinkronkan dan mentransfer data antarperangkat.

Catatan: API ini hanya tersedia di smartwatch Wear OS dan perangkat Android yang disambungkan. Untuk smartwatch Wear OS yang disambungkan dengan ponsel iOS, aplikasi dapat melakukan kueri API berbasis cloud lainnya jika konektivitas internet tersedia. Untuk selengkapnya informasi tentang API lainnya, kunjungi Akses dan sinkronisasi jaringan aktif Wear OS.

Perhatian: Karena API lapisan data didesain untuk komunikasi antara perangkat genggam dan {i>wearable<i}, inilah satu-satunya API yang bisa Anda gunakan untuk mengatur komunikasi antar perangkat ini. Misalnya, jangan mencoba membuka soket tingkat rendah untuk membuat saluran komunikasi.

Kasus penggunaan umum

Data Layer API sangat berguna untuk kasus penggunaan kebugaran dan media.

Aplikasi kebugaran

Mengirimkan data olahraga dari aplikasi Wear OS ke aplikasi seluler Kebugaran sering kali perlu menulis data latihan yang diambil oleh jam ke aplikasi seluler atau ke Health Hubungkan. Jika menggunakan Data Layer API untuk mentransfer data, gunakan klien pesan untuk mengirim data olahraga dari aplikasi Wear OS ke aplikasi seluler untuk menulis ke Health Connect.

Streaming data live ke perangkat seluler selama olahraga di rumah

Skenario olahraga di rumah yang umum adalah streaming data detak jantung dari Wear OS perangkat seluler ke perangkat seluler dan menampilkan informasi detak jantung terbaru kepada pengguna di layar perangkat seluler mereka. Untuk melakukan streaming data ini, gunakan klien saluran.

Aplikasi media

Untuk mengontrol pemutar media melalui tindakan jeda/lanjutkan/mulai/akhir dari jam tangan ke ponsel, gunakan klien pesan.

Opsi untuk komunikasi

Data ditransfer dengan salah satu cara berikut:

  1. Secara langsung, jika ada koneksi Bluetooth antara Perangkat Wear OS dan perangkat lain.
  2. Melalui jaringan yang tersedia, seperti LTE atau Wi-Fi, menggunakan {i>node <i}jaringan di server Google sebagai perantara.

Semua klien Lapisan Data dapat bertukar data menggunakan Bluetooth atau {i>cloud<i}, tergantung pada koneksi yang tersedia untuk perangkat tersebut. Asumsikan bahwa data ditransmisikan menggunakan Lapisan Data suatu saat nanti.

Bluetooth

Jika perangkat terhubung menggunakan Bluetooth, Lapisan Data akan menggunakan koneksi ini. Ada satu saluran terenkripsi di antara perangkat, yang menggunakan Enkripsi Bluetooth, yang dikelola oleh layanan Google Play.

Cloud

Data otomatis dirutekan melalui Google Cloud saat Bluetooth tidak tersedia. Semua data yang ditransfer melalui Google Cloud dienkripsi end-to-end.

Keamanan komunikasi

Layanan Google Play menerapkan pembatasan berikut untuk memberikan komunikasi antara aplikasi yang diinstal di perangkat Wear OS dan aplikasi yang sama diinstal di perangkat genggam terdekat:

  • Nama paket harus cocok di seluruh perangkat.
  • Tanda tangan paket harus cocok di seluruh perangkat.

Tidak ada aplikasi lain yang memiliki akses ke data tersebut, apa pun jenis koneksinya.

Penyiapan

Data Layer API Wearable memiliki dependensi berikut:

Sertakan dependensi berikut dalam file build.gradle modul Wear Anda:

dependencies {
    ...
    implementation("com.google.android.gms:play-services-wearable:18.2.0")
}

Memfasilitasi proses penyambungan awal

Horologist menyediakan beberapa library bantuan selain API platform. Library ini menyertakan library lapisan data yang membantu membuat koneksi antara perangkat seluler dan perangkat Wear OS. Selain itu, menyediakan API yang mudah untuk melakukan hal berikut:

  • Instal aplikasi di perangkat lain.
  • Luncurkan aplikasi di perangkat lain.
  • Meluncurkan aktivitas tertentu di perangkat lain.
  • Luncurkan aplikasi pendamping.

Mengakses lapisan data

Untuk memanggil Data Layer API, gunakan class Wearable untuk mendapatkan instance berbagai class klien, seperti DataClient dan MessageClient.

Untuk informasi selengkapnya, lihat contoh DataLayer.

Menggunakan klien minimal

Untuk membuat klien, lihat kode contoh berikut:

Kotlin

val dataClient: DataClient = Wearable.getDataClient(context)

Java

DataClient dataClient = Wearable.getDataClient(context);

Konteks dapat berupa konteks Android mana pun yang valid. Jika Anda menggunakan API dalam cakupan Activity, gunakan metode getDataClient() dari Wearable . Hal ini memungkinkan interaksi tertentu muncul sebagai dialog, bukan sebagai notifikasi, seperti saat pengguna diminta untuk mengupdate versi Google Layanan Play.

Secara default, callback ke pemroses dibuat di UI thread utama aplikasi. Untuk memiliki callback yang dibuat di thread lain, gunakan objek WearableOptions untuk tentukan Looper kustom:

Kotlin

runBlocking {
    Wearable.getDataClient(context, options)
}

Java

WearableOptions options = new WearableOptions.Builder().setLooper(myLooper).build();
DataClient dataClient = Wearable.getDataClient(context, options);

Untuk informasi selengkapnya, lihat referensi WearableOptions.Builder.

Membuat ulang instance klien sesuai kebutuhan

Klien Wearable API, seperti DataClient dan MessageClient, adalah murah untuk dibuat. Jadi alih-alih berpegang pada klien, buat ulang mereka sebagai Anda membutuhkannya, menggunakan gaya yang sesuai dengan aplikasi Anda.

Status klien, seperti kumpulan pemroses terdaftar, dibagikan di semua dan dipertahankan jika layanan Google Play diupdate saat aplikasi sedang berjalan.