Google Health API จะติดตามข้อมูลจำนวนก้าวและข้อมูลกิจกรรมของผู้ใช้โดยใช้stepsประเภทข้อมูลช่วงเวลา จำนวนก้าวเป็นตัววัดพื้นฐานของกิจกรรมทางกายในแต่ละวัน ซึ่งช่วยให้นักพัฒนาแอปติดตามความคืบหน้าด้านฟิตเนส คำนวณการใช้พลังงาน และสร้างสรุปกิจกรรมประจำวันสำหรับผู้ใช้
ทำความเข้าใจวิธีอ่านและจัดโครงสร้างเมตริกจำนวนก้าวในแอปพลิเคชันของคุณเพื่อให้ผู้ใช้ได้รับประสบการณ์ที่ดีที่สุด
ประเภทข้อมูลที่รองรับ
API รองรับประเภทข้อมูลต่อไปนี้สำหรับการติดตามจำนวนก้าว
| ประเภทข้อมูล | การดำเนินการ ที่ใช้ได้ |
ขอบเขต |
|---|---|---|
|
ขั้นตอน
dataType:
stepsพารามิเตอร์ตัวกรอง: steps
ประเภทระเบียน: ช่วงเวลา
ความละเอียดของพื้นที่เก็บข้อมูล: 1 นาที
อุปกรณ์ที่เข้ากันได้
|
list, reconcile, rollup, dailyRollup | .activity_and_fitness.readonly.activity_and_fitness.writeonly |
หลักเกณฑ์
เมื่อผสานรวมการติดตามจำนวนก้าวเข้ากับแอป ให้ทำตามแนวทางการออกแบบและ การใช้งานเหล่านี้
การคำนวณความเร็วและอัตราการก้าว
Google Health API ใช้สูตรมาตรฐานในการคำนวณความเร็วและฝีเท้า ดังนี้
- ความเร็ว =
distance / time(hour) - เพซ =
time(seconds) / distance
ส่วนหัว Accept-Language ที่ระบุในคำขอจะเป็นตัวกำหนดหน่วยของ
ระยะทาง
ภาพรวมรายวัน
หากต้องการรวบรวมจำนวนก้าวรายวันอย่างถูกต้องเมื่อมีการเดินทาง การเปลี่ยนแปลงเขตเวลา หรือ
เวลาออมแสง ให้หลีกเลี่ยงการคำนวณระยะเวลาฝั่งไคลเอ็นต์ แต่ให้
ส่งคำค้นหาไปยังปลายทาง dailyRollUp ซึ่งจะปรับช่องว่างของข้อมูลจริง
โดยอัตโนมัติโดยใช้ส่วนออฟเซ็ต UTC การสรุปจะแสดงผล StepsRollupValue
ที่มีฟิลด์ countSum ซึ่งแสดงจำนวนก้าวสะสมทั้งหมดสำหรับวันที่ที่ขอ
การวาดอินเทอร์เฟซผู้ใช้ (การกระทบยอด)
เมื่อสร้างองค์ประกอบของอินเทอร์เฟซผู้ใช้เพื่อแสดงข้อมูลขั้นตอน ให้ใช้reconcile
ปลายทาง หากแหล่งข้อมูลหลายแหล่ง (เช่น สมาร์ทวอทช์และโทรศัพท์มือถือ)
บันทึกจำนวนก้าวพร้อมกัน reconcileปลายทางจะแก้ไข
ความขัดแย้งและผสานสตรีมเพื่อแสดงสตรีมข้อมูลเดียวที่ได้รับการกระทบยอด
ดูข้อมูลเกี่ยวกับการจัดการช่วงเวลาที่ทับซ้อนกันจากการซิงค์อุปกรณ์ที่เชื่อมต่อ และความสามารถในการเปลี่ยนแปลงการประทับเวลาได้ที่ คู่มือการจัดการข้อมูล
การติดตามระหว่างวันและฮิสโตแกรม
หากต้องการแสดงกิจกรรมของผู้ใช้แบบละเอียดตลอดทั้งวัน (เช่น แผนภูมิและกราฟ) ให้ทำดังนี้
- ฮิสโทแกรมแบบขั้นละชั่วโมงหรือนาที: ส่งคำค้นหาไปยังปลายทาง
rollUpโดยระบุระยะเวลา (เช่น60sสำหรับ 1 นาที หรือ3600sสำหรับ 1 ชั่วโมง) โดยใช้พารามิเตอร์windowSizeเนื่องจากระบบจะบันทึกข้อมูลจำนวนก้าวในช่วงเวลา 1 นาที (60s) ให้ตั้งค่าwindowSizeอย่างน้อย60sคำขอที่มีขนาดหน้าต่างต่ำกว่า 1 นาที (เช่น10sหรือ30s) จะไม่แบ่งยอดรวมของแต่ละนาที แต่จะวางจำนวนเต็มของนาทีนั้นลงในถังย่อยแรกที่ตรงกัน โปรดดูรายละเอียดที่หัวข้อ ขนาดหน้าต่างการสรุปและความละเอียดของพื้นที่เก็บข้อมูลพื้นฐาน - บันทึกขั้นตอนทั้งหมด: ใช้ปลายทาง
listเพื่อดึงข้อมูลบันทึกขั้นตอนแบบละเอียดที่สุด ดิบ
ปลายทาง rollUp, dailyRollUp และ reconcile ยอมรับพารามิเตอร์
dataSourceFamily ซึ่งช่วยให้คุณกรองข้อมูลจากแหล่งที่มา
กลุ่มที่เฉพาะเจาะจงได้ ดูรายละเอียดเพิ่มเติมและตัวอย่างการใช้งานได้ที่ส่วนกรองตามตระกูลแหล่งข้อมูลในคำแนะนำการกรองข้อมูล
การซิงค์แบบเรียลไทม์โดยใช้ Webhook
สมัครรับข้อมูลการเก็บรวบรวมstepsประเภทข้อมูลเพื่อรับการแจ้งเตือนแบบเรียลไทม์
เมื่อมีการนำเข้าหรือซิงค์ข้อมูลก้าวเดินใหม่ แทนที่จะสำรวจปลายทาง REST
ให้อัปเดตแดชบอร์ดฝั่งไคลเอ็นต์แบบไดนามิกเพื่อตอบสนองต่อการแจ้งเตือน
Webhook เหล่านี้ ดูรายละเอียดวิธีกำหนดค่าการสมัครใช้บริการได้ที่
การสมัครใช้บริการ Webhook
จัดการค่า 0 จริง
Google Health API จะใช้ค่า 0 จริงเพื่อแก้ช่วงเวลาที่ไม่มีการเคลื่อนไหว หาก
ผู้ใช้สวมอุปกรณ์ติดตามแต่ไม่ได้เดินในช่วงระยะเวลาหนึ่งๆ API
จะแสดงบันทึกสำหรับช่วงเวลานั้นซึ่งมีแหล่งข้อมูลปกติและ
ข้อมูลเมตาของไทม์สแตมป์ แต่จะละเว้นพร็อพเพอร์ตี้ count
ซึ่งจะช่วยให้คุณแยกความแตกต่างระหว่างสิ่งต่อไปนี้ได้
- ช่วงเวลาที่อยู่กับที่บนข้อมือ: ผู้ใช้สวมอุปกรณ์แต่ไม่ได้
เดิน ซึ่งจะแสดงระเบียนที่ไม่มีพร็อพเพอร์ตี้
count(ตีความว่าไม่มีขั้นตอน) - ช่วงที่ไม่ได้สวมใส่อุปกรณ์: ผู้ใช้ไม่ได้สวมใส่อุปกรณ์ ซึ่งจะไม่มี บันทึก ทำให้เกิดช่องว่างของข้อมูลขนาดใหญ่
ดูรายละเอียดเพิ่มเติมได้ในคำแนะนำการแสดงข้อมูลและค่า 0 ที่แท้จริง