Google Health API melacak langkah dan data aktivitas pengguna menggunakan jenis data interval steps. Jumlah langkah merupakan ukuran dasar aktivitas fisik harian, yang 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:
| Jenis data | Operasi yang tersedia |
Cakupan |
|---|---|---|
|
Langkah
dataType:
stepsfilter parameter: steps
Jenis data: Interval
Resolusi penyimpanan: 1 menit
Perangkat yang kompatibel
|
list, reconcile, rollup, dailyRollup | .activity_and_fitness.readonly.activity_and_fitness.writeonly |
Panduan
Saat mengintegrasikan pelacakan langkah ke dalam aplikasi, ikuti panduan desain dan penerapan ini.
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 selama perjalanan, perubahan zona waktu, atau
waktu musim panas, jangan lakukan penghitungan durasi sisi klien. Sebagai gantinya, buat kueri endpoint dailyRollUp yang merekonsiliasi kesenjangan data fisik secara otomatis menggunakan selisih UTC. Rollup menampilkan StepsRollupValue
yang berisi kolom countSum, yang mewakili total langkah yang diakumulasikan untuk
hari yang diminta. Untuk mengetahui detailnya, lihat
Menggabungkan di seluruh hari kalender dalam
panduan Menggabungkan data.
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-langkah pada saat yang sama, endpoint reconcile akan menyelesaikan
konflik dan menggabungkan aliran data untuk menampilkan satu aliran data yang direkonsiliasi.
Untuk mengetahui informasi tentang cara menangani interval yang tumpang-tindih dari sinkronisasi perangkat terhubung dan mutabilitas stempel waktu, lihat Panduan pengelolaan data.
Pelacakan dan histogram intraday
Untuk menampilkan aktivitas pengguna yang mendetail sepanjang hari (seperti diagram dan grafik):
- Histogram langkah per jam atau per menit: Buat kueri endpoint
rollUp, dengan menentukan durasi (seperti60suntuk 1 menit atau3600suntuk 1 jam) menggunakan parameterwindowSize. Karena data langkah dicatat dalam interval 1 menit (60s), tetapkanwindowSizeke setidaknya60s. Permintaan dengan ukuran periode di bawah satu menit (seperti10satau30s) tidak membagi total menit satu per satu, sehingga menempatkan jumlah menit penuh ke dalam sub-bucket pertama yang cocok. Untuk mengetahui detailnya, lihat Periode rollup dan resolusi penyimpanan. - Semua data langkah: Gunakan endpoint
listuntuk 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 selengkapnya dan contoh penggunaan, lihat bagian Memfilter menurut kelompok sumber data dalam panduan Memfilter data.
Sinkronisasi real-time menggunakan webhook
Berlangganan ke pengumpulan jenis data steps untuk mendapatkan notifikasi secara real time
saat data langkah baru diimpor atau disinkronkan. Daripada melakukan polling endpoint REST, perbarui dasbor sisi klien secara dinamis sebagai respons terhadap notifikasi webhook ini. Untuk mengetahui detail tentang cara menyiapkan langganan, lihat
Langganan webhook.