API گوگل هلث (Google Health API) با استفاده از نوع دادهی steps interval)، گامها و دادههای فعالیت کاربر را ردیابی میکند. تعداد گامها نشاندهندهی یک معیار اساسی برای فعالیت بدنی روزانه است و به توسعهدهندگان کمک میکند تا پیشرفت تناسب اندام را ردیابی کنند، میزان مصرف انرژی را محاسبه کنند و خلاصهای از فعالیتهای روزانهی کاربرپسند بسازند.
نحوه خواندن و ساختاردهی معیارهای شمارش مراحل در برنامه خود را برای ارائه بهترین تجربه به کاربران خود درک کنید.
انواع داده پشتیبانی شده
این API از نوع داده زیر برای ردیابی تعداد گامها پشتیبانی میکند:
| نوع داده | موجود است عملیات | دامنه |
|---|---|---|
| مراحل نوع داده: stepsپارامتر فیلتر: steps نوع رکورد: فاصلهای وضوح ذخیره سازی: ۱ دقیقه دستگاههای سازگار
| فهرست کردن، تطبیق دادن، جمع کردن، جمع کردن روزانه | .activity_and_fitness.readonly.activity_and_fitness.writeonly |
دستورالعملها
هنگام ادغام ردیابی مراحل در برنامه خود، این دستورالعملهای طراحی و پیادهسازی را دنبال کنید.
محاسبه سرعت و گام
رابط برنامهنویسی کاربردی گوگل هلث از فرمولهای استاندارد برای محاسبه سرعت و گام استفاده میکند:
- سرعت =
distance / time(hour) - سرعت =
time(seconds) / distance
سرآیند Accept-Language که در درخواست مشخص شده است، واحد فاصله را تعیین میکند.
مرور روزانه
برای جمعبندی دقیق تعداد گامهای روزانه تحت تأثیر سفر، تغییرات منطقه زمانی یا صرفهجویی در ساعات تابستانی، محاسبات مدت زمان سمت کلاینت را انجام ندهید. در عوض، از نقطه پایانی dailyRollUp پرسوجو کنید که شکافهای دادههای فیزیکی را بهطور خودکار با استفاده از آفستهای UTC تطبیق میدهد. این جمعبندی یک StepsRollupValue حاوی فیلد countSum را برمیگرداند که نشاندهنده کل گامهای انباشتهشده برای روز درخواستی است.
ترسیم رابطهای کاربری (آشتیسازی)
هنگام ساخت عناصر رابط کاربری برای نمایش دادههای مرحله، از نقطه پایانی reconcile استفاده کنید. اگر چندین منبع داده (مانند ساعت هوشمند و تلفن همراه) مراحل را همزمان ثبت کرده باشند، نقطه پایانی reconcile ، تداخلها را حل کرده و جریانها را ادغام میکند تا یک جریان داده تطبیق داده شده واحد را برگرداند.
برای اطلاعات بیشتر در مورد مدیریت فواصل همپوشانی از همگامسازی دستگاههای متصل و تغییرپذیری مهر زمانی، به راهنمای مدیریت دادهها مراجعه کنید.
ردیابی و هیستوگرامهای درونروزی
برای نمایش فعالیت دقیق کاربر در طول روز (مانند نمودارها و گرافها):
- هیستوگرامهای گام ساعتی یا دقیقهای: با استفاده از پارامتر
windowSize، نقطه پایانیrollUpرا جستجو کنید و مدت زمان (مانند60sبرای ۱ دقیقه یا3600sبرای ۱ ساعت) را مشخص کنید. از آنجا که دادههای گام در فواصل ۱ دقیقهای (60s) ثبت میشوند،windowSizeحداقل روی60sتنظیم کنید. درخواستهایی با اندازه پنجرههای زیر دقیقهای (مانند10sیا30s) مجموع دقیقههای جداگانه را برش نمیدهند و تعداد کامل دقیقه را در اولین زیرباکت منطبق قرار میدهند. برای جزئیات بیشتر، به اندازه پنجره Rollup و وضوح ذخیرهسازی اساسی مراجعه کنید. - تمام رکوردهای مرحله: از نقطه پایانی
listبرای دریافت جزئیترین و خامترین رکوردهای مرحله استفاده کنید.
نقاط انتهایی rollUp ، dailyRollUp و reconcile پارامتر dataSourceFamily را میپذیرند و به شما امکان میدهند دادهها را از گروههای منبع خاص فیلتر کنید. برای جزئیات بیشتر و مثالهای کاربرد، به بخش «فیلتر بر اساس خانواده منبع داده» در راهنمای فیلتر کردن دادهها مراجعه کنید.
همگامسازی بلادرنگ با استفاده از وبهوکها
در مجموعه نوع داده steps مشترک شوید تا هنگام وارد شدن یا همگامسازی دادههای step جدید، به صورت آنی مطلع شوید. به جای نمونهبرداری از نقاط انتهایی REST، داشبوردهای سمت کلاینت را به صورت پویا در پاسخ به این اعلانهای webhook بهروزرسانی کنید. برای جزئیات بیشتر در مورد نحوه تنظیم اشتراکها، به Webhook subscriptions مراجعه کنید.
مدیریت صفرهای واقعی
API گوگل هلث (Google Health API) برای محاسبهی فواصل زمانی بیتحرکی، صفرهای واقعی را پیادهسازی میکند. اگر کاربری در یک دورهی زمانی مشخص، ردیاب به دست داشته باشد اما راه نرود، API رکوردی برای آن بازه زمانی برمیگرداند که شامل منبع دادهی معمولی و ابردادهی زمان است، اما ویژگی count حذف میکند.
این به شما امکان میدهد بین موارد زیر تمایز قائل شوید:
- دورههای ثابت روی مچ دست: کاربر دستگاه را پوشیده اما راه نمیرود. این حالت رکوردها را بدون ویژگی
countبرمیگرداند (به عنوان گامهای صفر تفسیر میشود). - دورههای عدم استفاده از مچ دست: کاربر دستگاه را نپوشیده است. این حالت هیچ رکوردی را برنمیگرداند و منجر به شکافهای بزرگ داده میشود.
برای جزئیات بیشتر به راهنمای « حضور دادهها و صفرهای واقعی» مراجعه کنید.