Mengembangkan Pengalaman Langkah dengan Google Health API

Google Health API melacak data langkah dan aktivitas pengguna menggunakan jenis data interval steps. Jumlah langkah mewakili pengukuran dasar aktivitas fisik harian, membantu developer melacak progres kebugaran, menghitung pengeluaran energi, dan membuat ringkasan aktivitas harian yang ditampilkan kepada pengguna.

Pahami cara membaca dan menyusun metrik jumlah langkah di aplikasi Anda untuk memberikan pengalaman terbaik bagi pengguna.

Jenis data yang didukung

API ini mendukung jenis data berikut untuk melacak jumlah langkah:

Tabel: Jenis data Langkah Google Health API
Jenis data Operasi
yang tersedia
Cakupan
Langkah-Langkah
dataType: steps
filter parameter: steps
Jenis data: Interval

Perangkat yang kompatibel

list, reconcile, rollup, dailyRollup .activity_and_fitness.readonly
.activity_and_fitness.writeonly

Panduan

Saat mengintegrasikan pelacakan langkah ke dalam aplikasi Anda, ikuti panduan desain dan penerapan berikut.

Penghitungan kecepatan dan laju

Google Health API menggunakan formula standar untuk menghitung kecepatan dan laju:

  • Kecepatan = distance / time(hour)
  • Kecepatan = time(seconds) / distance

Header Accept-Language yang ditentukan dalam permintaan menentukan satuan jarak.

Ringkasan harian

Untuk menggabungkan jumlah langkah harian secara akurat saat bepergian, perubahan zona waktu, atau perubahan waktu musim panas, jangan lakukan penghitungan durasi sisi klien. Sebagai gantinya, kueri endpoint dailyRollUp yang merekonsiliasi kesenjangan data fisik secara otomatis menggunakan selisih UTC. Penggabungan menampilkan StepsRollupValue yang berisi kolom countSum, yang merepresentasikan total langkah yang terakumulasi untuk hari yang diminta.

Menggambar antarmuka pengguna (Rekonsiliasi)

Saat membuat elemen antarmuka pengguna untuk menampilkan data langkah, gunakan endpoint reconcile. Jika beberapa sumber data (seperti smartwatch dan ponsel) telah mencatat langkah secara bersamaan, endpoint reconcile akan menyelesaikan konflik dan menggabungkan aliran untuk menampilkan satu aliran data yang telah disesuaikan.

Pelacakan dan histogram intraday

Untuk menampilkan aktivitas pengguna yang mendetail sepanjang hari (seperti diagram dan grafik):

  • Histogram langkah per jam: Buat kueri endpoint rollUp, dengan menentukan durasi (misalnya, 3600s selama 1 jam) menggunakan parameter windowSize.
  • Semua data langkah: Gunakan endpoint list untuk mengambil data langkah mentah yang paling terperinci.

Endpoint rollUp, dailyRollUp, dan reconcile menerima parameter dataSourceFamily, sehingga Anda dapat memfilter data dari grup sumber tertentu. Untuk mengetahui detail dan contoh penggunaan selengkapnya, lihat bagian Memfilter dan menggabungkan menurut family sumber data di panduan Endpoint.

Sinkronisasi real-time menggunakan webhook

Berlangganan koleksi tipe data steps untuk mendapatkan notifikasi secara real-time saat data langkah baru diimpor atau disinkronkan. Daripada melakukan polling pada endpoint REST, perbarui dasbor sisi klien secara dinamis sebagai respons terhadap notifikasi webhook ini. Untuk mengetahui detail cara menyiapkan langganan, lihat Langganan webhook.

Menangani nol sebenarnya

Google Health API menerapkan nol sebenarnya untuk menyelesaikan interval tidak aktif. Jika pengguna memakai pelacak, tetapi tidak berjalan selama jangka waktu tertentu, API akan menampilkan catatan untuk interval tersebut yang berisi sumber data normal dan metadata stempel waktu, tetapi tidak menyertakan properti count.

Hal ini memungkinkan Anda membedakan antara:

  • Periode tidak bergerak di pergelangan tangan: Pengguna memakai perangkat, tetapi tidak berjalan. Kueri ini akan menampilkan data tanpa properti count (ditafsirkan sebagai nol langkah).
  • Periode tidak dipakai: Pengguna tidak memakai perangkat. Hal ini tidak akan menampilkan catatan, sehingga menyebabkan kesenjangan data yang besar.

Lihat panduan Kehadiran data dan nol sebenarnya untuk mengetahui detail selengkapnya.