جدول زیر حاوی فهرست کامل انواع دادهها است، با چندین ستون برای کمک به شما در درک نمایش هر نوع در Google Health API، و همچنین دامنهای که هرکدام تحت آن دردسترس است.
فیلدهای نوع داده
جدول انواع داده Google Health API شامل چندین ستون فیلد است تا به شما کمک کند نمایش و الزامات هر نوع داده را درک کنید. این ستونها عبارتاند از:
| فیلد | شرح |
|---|---|
dataType |
شناسهای که با خط تیره جدا شده است (برای مثال،
active-minutes) و در نشانیهای وب نقطه پایان استفاده میشود. |
پارامتر filter |
شناسهای که با زیرخط از هم جدا شده است (برای مثال،
active_minutes) و بهعنوان مقدار برای پارامتر فیلتر
dataType در درخواستهای ادغام روزانه و ادغام
استفاده میشود. |
| نوع گزارش | ساختار و قالب دادههای ضبطشده را نشان میدهد. در پشت صحنه، این با نمایش منبع نقاط داده همراستا است. مقادیر ممکن عبارتاند از:
|
| عملیات دردسترس | روشهای API پشتیبانیشده برای نوع داده را فهرست میکند (مانند
list، create، و rollUp). |
| Scope | گستره(های) OAuth موردنیاز برای دسترسی به نوع داده. |
| پشتیبانی وبقلاب | نشان میدهد که نوع داده از اعلانهای همزمان بااستفاده از وبقلابها هنگام همگامسازی دادههای جدید پشتیبانی میکند. |
| پشتیبانی از صفر واقعی | نشان میدهد که نوع داده از ثبت مقادیر صفر صریح پشتیبانی میکند تا بین مقدار صفر فعال (مانند صفر دقیقه فعال) و دادههای مفقود یا ثبتنشده تمایز قائل شود. |
| وضوح ذخیرهسازی | حداقل فاصله زمانی ضبط یا نمونهبرداری که در آن نقاط داده ذخیره میشوند (برای مثال، ۱ دقیقه برای steps). برای تجمیعها، این نشاندهنده حداقل windowSize توصیهشده برای اطمینان از توزیع یکنواخت تجمیع بدون مصنوعات دادههای زیرفاصله است. |
| دستگاههای سازگار | فهرست گسترشپذیری از دستگاههای فیزیکی که میتوانند این نوع داده را ضبط و با Google Health API (بااستفاده از برنامه Fitbit) همگامسازی کنند. |
| نوع داده | عملیات دردسترس |
حوزه |
|---|---|---|
|
انرژی مصرفشده در فعالیت
dataType:
active-energy-burnedfilter parameter: active_energy_burned
نوع گزارش: فاصله زمانی
وضوح ذخیرهسازی: ۱ دقیقه
|
list, reconcile, rollup, dailyRollup | .activity_and_fitness.readonly.activity_and_fitness.writeonly |
|
دقیقههای فعال
dataType:
active-minutesfilter parameter: active_minutes
نوع گزارش: فاصله زمانی
وضوح ذخیرهسازی: ۱ دقیقه
دستگاههای سازگار
|
list, reconcile, rollup, dailyRollup | .activity_and_fitness.readonly.activity_and_fitness.writeonly |
|
دقایق محدوده فعالیت
dataType:
active-zone-minutesfilter parameter: active_zone_minutes
نوع گزارش: فاصله زمانی
وضوح فضای ذخیرهسازی: ۱ دقیقه
دستگاههای سازگار
|
list, reconcile, rollup, dailyRollup | .activity_and_fitness.readonly.activity_and_fitness.writeonly |
|
سطح فعالیت
|
فهرست، تطبیق دادن | .activity_and_fitness.readonly.activity_and_fitness.writeonly |
|
ارتفاع
|
list, reconcile, rollup, dailyRollup | .activity_and_fitness.readonly.activity_and_fitness.writeonly |
|
قند خون
dataType:
blood-glucosefilter parameter: blood_glucose
نوع گزارش: نمونه
|
list, get, reconcile, rollup, dailyRollup | .health_metrics_and_measurements.readonly.health_metrics_and_measurements.writeonly |
|
چربی بدن
dataType:
body-fatfilter parameter: body_fat
نوع گزارش: نمونه
دستگاههای سازگار
|
list, get, reconcile, rollup, dailyRollup, create, update, batchDelete | .health_metrics_and_measurements.readonly.health_metrics_and_measurements.writeonly |
|
کالری در محدوده ضربان قلب
dataType:
calories-in-heart-rate-zonefilter parameter: calories_in_heart_rate_zone
نوع گزارش: فاصله زمانی
وضوح ذخیرهسازی: ۱ دقیقه
|
rollup, dailyRollup | .activity_and_fitness.readonly.activity_and_fitness.writeonly |
|
دمای مرکزی بدن
dataType:
core-body-temperaturefilter parameter: core_body_temperature
نوع گزارش: نمونه
|
list, get, reconcile, rollup, dailyRollup | .health_metrics_and_measurements.readonly.health_metrics_and_measurements.writeonly |
|
تغییرپذیری ضربان قلب روزانه
dataType:
daily-heart-rate-variabilityfilter parameter: daily_heart_rate_variability
نوع ضبط: روزانه
دستگاههای سازگار
|
فهرست، تطبیق دادن | .health_metrics_and_measurements.readonly.health_metrics_and_measurements.writeonly |
|
محدودههای ضربان قلب روزانه
dataType:
daily-heart-rate-zonesfilter parameter: daily_heart_rate_zones
نوع ضبط: روزانه
|
فهرست، تطبیق دادن | .health_metrics_and_measurements.readonly.health_metrics_and_measurements.writeonly |
|
اشباع اکسیژن روزانه
dataType:
daily-oxygen-saturationfilter parameter: daily_oxygen_saturation
نوع ضبط: روزانه
دستگاههای سازگار
|
فهرست، تطبیق دادن | .health_metrics_and_measurements.readonly.health_metrics_and_measurements.writeonly |
|
سرعت تنفس روزانه
dataType:
daily-respiratory-ratefilter parameter: daily_respiratory_rate
نوع ضبط: روزانه
دستگاههای سازگار
|
فهرست، تطبیق دادن | .health_metrics_and_measurements.readonly.health_metrics_and_measurements.writeonly |
|
ضربان قلب روزانه در حالت استراحت
dataType:
daily-resting-heart-ratefilter parameter: daily_resting_heart_rate
نوع ضبط: روزانه
دستگاههای سازگار
|
فهرست، تطبیق دادن | .health_metrics_and_measurements.readonly.health_metrics_and_measurements.writeonly |
|
انحرافات دمای خواب روزانه
dataType:
daily-sleep-temperature-derivationsfilter parameter: daily_sleep_temperature_derivations
نوع ضبط: روزانه
دستگاههای سازگار
|
فهرست، تطبیق دادن | .health_metrics_and_measurements.readonly.health_metrics_and_measurements.writeonly |
|
حداکثر اکسیژن مصرفی روزانه
dataType:
daily-vo2-maxfilter parameter: daily_vo2_max
نوع ضبط: روزانه
دستگاههای سازگار
|
فهرست، تطبیق دادن | .activity_and_fitness.readonly.activity_and_fitness.writeonly |
|
مسافت
dataType:
distancefilter parameter: distance
نوع گزارش: فاصله زمانی
وضوح ذخیرهسازی: ۱ دقیقه
دستگاههای سازگار
|
list, reconcile, rollup, dailyRollup | .activity_and_fitness.readonly.activity_and_fitness.writeonly |
|
الکتروکاردیوگرام (ECG)
dataType:
electrocardiogramfilter parameter: electrocardiogram
نوع ضبط: جلسه
دستگاههای سازگار
|
فهرست | .ecg.readonly |
|
ورزش
dataType:
exercisefilter parameter: exercise
نوع ضبط: جلسه
دستگاههای سازگار
|
list, get, reconcile, create, update, batchDelete | .activity_and_fitness.readonly.activity_and_fitness.writeonly |
|
طبقات
|
reconcile, rollup, dailyRollup | .activity_and_fitness.readonly.activity_and_fitness.writeonly |
|
غذا
|
فهرست، دریافت | .nutrition.readonly.nutrition.writeonly |
|
واحد اندازهگیری غذا
dataType:
food-measurement-unitfilter parameter: food_measurement_unit
نوع گزارش: غذا
دستگاههای سازگار
|
فهرست، دریافت | .nutrition.readonly.nutrition.writeonly |
|
ضربان قلب
dataType:
heart-ratefilter parameter: heart_rate
نوع گزارش: نمونه
وضوح فضای ذخیرهسازی: ۱ ثانیه
دستگاههای سازگار
|
list, reconcile, rollup, dailyRollup | .health_metrics_and_measurements.readonly.health_metrics_and_measurements.writeonly |
|
تغییرپذیری ضربان قلب
dataType:
heart-rate-variabilityfilter parameter: heart_rate_variability
نوع گزارش: نمونه
دستگاههای سازگار
|
فهرست، تطبیق دادن | .health_metrics_and_measurements.readonly.health_metrics_and_measurements.writeonly |
|
قد
|
list, get, reconcile, create, update, batchDelete | .health_metrics_and_measurements.readonly.health_metrics_and_measurements.writeonly |
|
گزارش آبرسانی
|
list, get, reconcile, rollup, dailyRollup, create, update, batchDelete | .nutrition.readonly.nutrition.writeonly |
|
اعلان ضربان نامنظم
dataType:
irregular-rhythm-notificationfilter parameter: irregular_rhythm_notification
نوع ضبط: جلسه
|
فهرست | .irn.readonly |
|
دوره قاعدگی
dataType:
menstrual-periodfilter parameter: menstrual_period
نوع گزارش: فاصله زمانی
|
create, update, batchDelete | .reproductive_health.writeonly |
|
حالوهوا
|
create, update, batchDelete | .mindfulness.writeonly |
|
گزارش تغذیه
dataType:
nutrition-logfilter parameter: nutrition_log
نوع ضبط: جلسه
دستگاههای سازگار
|
list, get, reconcile, rollup, dailyRollup, create, update, batchDelete | .nutrition.readonly.nutrition.writeonly |
|
آزمایش تخمکگذاری
|
create, update, batchDelete | .reproductive_health.writeonly |
|
اشباع اکسیژن
dataType:
oxygen-saturationfilter parameter: oxygen_saturation
نوع گزارش: نمونه
وضوح ذخیرهسازی: ۱ دقیقه
دستگاههای سازگار
|
فهرست، تطبیق دادن | .health_metrics_and_measurements.readonly.health_metrics_and_measurements.writeonly |
|
خلاصه اطلاعات خواب سرعت تنفس
dataType:
respiratory-rate-sleep-summaryfilter parameter: respiratory_rate_sleep_summary
نوع گزارش: نمونه
دستگاههای سازگار
|
فهرست، تطبیق دادن | .health_metrics_and_measurements.readonly.health_metrics_and_measurements.writeonly |
|
اجرای حداکثر اکسیژن مصرفی
dataType:
run-vo2-maxfilter parameter: run_vo2_max
نوع گزارش: نمونه
دستگاههای سازگار
|
list, reconcile, rollup, dailyRollup | .activity_and_fitness.readonly.activity_and_fitness.writeonly |
|
دوره بیتحرکی
dataType:
sedentary-periodfilter parameter: sedentary_period
نوع گزارش: فاصله زمانی
دستگاههای سازگار
|
list, reconcile, rollup, dailyRollup | .activity_and_fitness.readonly.activity_and_fitness.writeonly |
|
حسگرهای دمای پوست
v4beta
dataType:
skin-temperature-sensorsfilter parameter: skin_temperature_sensors
نوع گزارش: نمونه
دستگاههای سازگار |
فهرست | .health_metrics_and_measurements.readonly.health_metrics_and_measurements.writeonly |
|
خواب
dataType:
sleepfilter parameter: sleep
نوع ضبط: جلسه
دستگاههای سازگار
|
list, get, reconcile, create, update, batchDelete | .sleep.readonly.sleep.writeonly |
|
مراحل
dataType:
stepsfilter parameter: steps
نوع گزارش: فاصله زمانی
وضوح فضای ذخیرهسازی: ۱ دقیقه
دستگاههای سازگار
|
list, reconcile, rollup, dailyRollup | .activity_and_fitness.readonly.activity_and_fitness.writeonly |
|
دادههای طول شنا
dataType:
swim-lengths-datafilter parameter: swim_lengths_data
نوع گزارش: فاصله زمانی
دستگاههای سازگار
|
list, reconcile, rollup, dailyRollup | .activity_and_fitness.readonly.activity_and_fitness.writeonly |
|
علائم
|
create, update, batchDelete | .logged_symptoms.writeonly |
|
زمان در محدوده ضربان قلب
dataType:
time-in-heart-rate-zonefilter parameter: time_in_heart_rate_zone
نوع گزارش: فاصله زمانی
وضوح ذخیرهسازی: ۱ دقیقه
|
list, reconcile, rollup, dailyRollup | .activity_and_fitness.readonly.activity_and_fitness.writeonly |
|
مجموع کالری
dataType:
total-caloriesfilter parameter: total_calories
نوع گزارش: فاصله زمانی
وضوح ذخیرهسازی: ۱ دقیقه
دستگاههای سازگار
|
rollup, dailyRollup | .activity_and_fitness.readonly.activity_and_fitness.writeonly |
|
حداکثر اکسیژن مصرفی
dataType:
vo2-maxfilter parameter: vo2_max
نوع گزارش: نمونه
دستگاههای سازگار
|
فهرست، تطبیق دادن | .activity_and_fitness.readonly.activity_and_fitness.writeonly |
|
وزن
dataType:
weightfilter parameter: weight
نوع گزارش: نمونه
دستگاههای سازگار
|
list, get, reconcile, rollup, dailyRollup, create, update, batchDelete | .health_metrics_and_measurements.readonly.health_metrics_and_measurements.writeonly |
محدودیتهای پُرسمان
هنگام پرسمان کردن نقاط داده، خلاصهها، یا خلاصههای روزانه از API، محدودیتهای زیر را درنظر داشته باشید:
- الزامات فیلتر: برخیاز انواع دادههای مشتقشده فقط خواندنی، مثل
total-calories، به فیلتری نیاز دارند که زمان شروع بازه را مشخص کند (بااستفاده از زمان فیزیکی یا مدنی). - محدودیتهای محدوده پُرسمان: نقاط پایانی تجمیع خلاصه و خلاصه روزانه
حداکثر محدودیتهای محدوده پُرسمان را براساس نوع داده اعمال میکنند:
- حداکثر محدوده پُرسمان ۱۴ روز برای
calories-in-heart-rate-zone،heart-rate،active-minutes، وtotal-calories. - حداکثر محدوده پُرسمان ۹۰ روز برای همه انواع داده دیگر.
- حداکثر محدوده پُرسمان ۱۴ روز برای
- اندازه پنجره تجمیع: هنگام فراخوانی نقطه پایانی
rollUp، مدتwindowSizeباید حداقل ۱ ثانیه ("1s") باشد. مدتهای کمتر از ثانیه باINVALID_ARGUMENTرد میشوند. علاوهبراین،windowSizeرا برابر یا بزرگتر از وضوح ذخیرهسازی زیربنایی نوع داده انتخاب کنید (مثلاً"60s"برای انواع دادههای بازه ۱ دقیقهای مثلstepsوdistance) تا از توزیع ناهموار در بازههای فرعی جلوگیری شود. برای جزئیات، به پنجره تجمیع و وضوح فضای ذخیرهسازی مراجعه کنید.
انواع دادههای روزانه درمقابل بازهای
برای برخیاز سنجههای فیزیولوژیکی، مثل «تغییرپذیری ضربان قلب» (HRV) یا «اشباع اکسیژن» (SpO2)، Google Health API دو نوع داده متمایز ارائه میدهد: نسخه روزانه و نسخه فاصله زمانی. درک تفاوت بین این دو برای انتخاب سنجه مناسب برای مورد استفاده شما کلیدی است:
روزانه: یک خلاصه واحد و ازپیش تجمیعشده برای کل روز. از این برای روندهای سطح بالا و داشبوردهای روزانه استفاده کنید تا در پردازش صرفهجویی کنید.
فاصله: اندازهگیریهای دقیق و با وضوح بالا که درطول روز انجام میشود. از این گزارش برای ترسیم نوسانات درونروزی یا انجام تجزیهوتحلیل عمیق ساعتبهساعت استفاده کنید.
دردسترس بودن دادهها
بهروزرسانیهای دادههای کاربر فقط پساز همگامسازی ردیاب فعالیت یا وارد کردن دستی دادههای جدید در برنامه Google Health دردسترس است. وقتی برنامه Google Health در دستگاه همراه باز باشد و این دو دستگاه اتصال داده فعال داشته باشند و در محدوده بلوتوث باشند، دستگاه Fitbit و برنامه Google Health میتوانند هر ۱۵ دقیقه یکبار بهطور خودکار همگامسازی شوند. اگر کاربر فعالیت را بااستفاده از MobileTrack ردیابی میکند، MobileTrack تا زمانی که برنامه باز باشد هر ساعت همگامسازی میشود.
درحال پُرسمان دادههای تاریخی
یکی از مزایای اصلی Google Health API توانایی ردیابی عملکرد کاربر و پایش علائم حیاتی او در دورههای زمانی طولانی است. میتوانید دادههای کاربر را تا جایی که ثبت شده است جستجو کنید؛ میانای برنامهسازی کاربردی هیچ محدودیت یا قیدی بر مقدار دادههای قدیمی که برنامه شما میتواند مصرف کند اعمال نمیکند.
بااینحال، پرسوجو کردن دادههای قبلی همچنان تحت نظارت محدودیتهای نرخ استاندارد است. برای مدیریت پایداری سیستم و جلوگیری از بار داده بیشازحد، Google Health API از صفحهبندی خودکار با اندازههای صفحه مختص نقطه پایانی استفاده میکند. به مرزها و رفتار زیر توجه کنید:
- صفحهبندی خودکار: اگر بازه طولانیای از دادهها را پُرسمان کنید،
میانای برنامهسازی کاربردی فقط صفحه اول نتایج را تا سقف اندازه صفحه برای آن
نقطه پایانی، بههمراه
nextPageTokenبرمیگرداند. باید ازnextPageTokenبرای درخواست صفحههای بعدی استفاده کنید. - اندازههای متغیر صفحه: حدود سقف به نقطه پایانی
و نوع داده بستگی دارد. برای اکثر انواع داده، اندازه صفحه به حداکثر ۱۰٬۰۰۰ محدود میشود.
بااینحال، برای انواع خاصی از دادهها مانند
exerciseوsleep، اندازه پیشفرض و حداکثر صفحه به ۲۵ محدود شده است. برای مثال، اگر کارخواهی همه دادههای خواب ۱۰ سال گذشته را درخواست کند، میانای برنامهسازی کاربردی همچنان فقط ۲۵ جلسه خواب را در صفحه اول برمیگرداند. - محدودیتهای محدوده تاریخ تجمیع: برای نقاط پایانی تجمیع و انبوهش دادهها
(مانند
rollUpوdailyRollUp)، محدودههای تاریخ پُرسمان براساس نوع داده محدود میشوند:- حداکثر محدوده ۱۴ روز برای
calories-in-heart-rate-zone،heart-rate،active-minutes، وtotal-calories. - حداکثر محدوده ۹۰ روز برای همه انواع دیگر دادههای تجمیعی.
- حداکثر محدوده ۱۴ روز برای
بسته به حجم دادههای سابقه که برنامه شما نیاز دارد، بازیابی کل مجموعه دادهها مستلزم صفحهبندی متوالی صفحات خواهد بود. هنگام طراحی فرایند همگامسازی دادههای برنامهتان، این نکته را درنظر داشته باشید.
برای اطمینان از عملکرد بهینه و جلوگیری از خطاهای میانای برنامهسازی کاربردی، هنگام پُرسمان دادههای سابقه، این دستورالعملها را دنبال کنید:
همگامسازی مرحلهای دادهها (بارگیری گرم درمقابل بارگیری سرد)
- بارگذاری اولیه «داغ»: فقط دادههای ۷ تا ۱۴ روز اخیر را درطول توالی بارگذاری اولیه واکشی و ارائه کنید. این کار تضمین میکند که کاربران دادهها را فوراً و بدون انتظار برای پُرسمانهای طولانیمدت ببینند.
- بارگیری «سرد» پسزمینه: بازیابی دادههای قدیمیتر را به یک صف ناهمگام با اولویت پایینتر یا فرایند پسزمینه پساز رندر شدن واسط کاربری اصلی واگذار کنید.
تکهتکه کردن پُرسمان برای انبوهش
- ازآنجاییکه نقاط پایانی تجمیع و تجمیع روزانه حداکثر محدوده تاریخ را اعمال میکنند (۱۴ یا ۹۰ روز بسته به نوع داده)، باید پُرسمانهای تجمیع تاریخی بزرگ را به بازههای متوالی کوچکتر در این محدودهها تقسیم کنید.
- این زیرپرسشها را بهطور ایمن دستهبندی یا توالیبندی کنید تا محدودیتهای همزمانی رعایت شود و نشانگرهای پیشرفت واسط کاربر ثابت بماند.
بهرهگیری از خلاصههای ازپیش انبوهیده
داشبوردهای نمای کلی و نمودارهای روند را بازسازی کنید تا از نقاط پایانی خلاصه و ازپیش تجمیعشده (مانند DailyRollUpDataPoints) استفاده کنند. این کار سربار محاسباتی در پسرانه و زمان انتقال شبکه به کارخواه را بهطور چشمگیری کاهش میدهد.
مدیریت خطای انعطافپذیر (امتحان مجدد هوشمند)
- هنگام مواجه شدن با محدودیتهای نرخ (
429 Too Many Requests) و وقفه زمانی درگاه سرور (504 Gateway Timeout)، مدیریت سختگیرانه عقبنشینی نمایی را پیادهسازی کنید. هرگز بارهای داده بزرگ و ناموفق را بلافاصله دوباره امتحان نکنید. تلاشهای مجدد فوری باعث افزایش ازدحام در پسزمینه و تشدید تخریب سیستم میشود.
دسترسی شخص ثالث
دستگاههای Fitbit نمیتوانند مستقیماً با برنامهها یا سرویسهای شخص ثالث ارتباط برقرار کنند. این دستگاهها بهگونهای طراحی شدهاند که فقط با برنامه Google Health ارتباط برقرار کنند و همگامسازی شوند.
دستگاه درطول روز، هرزمان که برنامه Google Health باز باشد، یا هر ۱۵ دقیقه یکبار اگر بلوتوث فعال باشد و برنامه در پسزمینه درحال اجرا باشد، دادهها را بهطور خودکار همگامسازی میکند. پساز تکمیل این فرایند همگامسازی، دادهها ازطریق Google Health API برای سرویسهای طرف سوم دردسترس قرار میگیرند.
فیلتر کردن کیفیت و اعتبار دادهها
برای ارائه سنجههای سلامتی قابلاعتماد بدون نیاز به فیلتر کردن نویز سفارشی در سمت کارخواه، Google Health API دورسنجی حسگر را اعتبارسنجی میکند و اندازهگیریهای نامعتبر را قبلاز برگرداندن پاسخها مستثنی میکند:
- برای اشباع اکسیژن خون در سطح دقیقه (
oxygen-saturation)، میانای برنامهسازی کاربردی فقط خوانشهای معتبر را برمیگرداند و دقایقی را که بهدلیل حرکت دست، شل بودن ساعت روی مچ، یا امتیاز اطمینان حسگر زیر ۵۰٪ نامعتبر علامتگذاری شدهاند، و همچنین ۳ دقیقه قبل و بعداز خوانش نامعتبر و بازههای معتبر مجزای کوتاهتر از ۴ دقیقه را حذف میکند. درنتیجه، پوشش در سطح دقیقه میتواند پراکنده باشد و انتظار میرود وقفههایی وجود داشته باشد. برای جزئیات، به فیلتر کردن SpO2 در سطح دقیقه و اعتبار دادهها مراجعه کنید.
استانداردهای فاصله
مسافتهای تمرین، مثل elevationGainMillimeters، به میلیمتر بهعنوان واحد استاندارد اندازهگیری میشود، زیرا:
- حفظ دقت دادهها: مهمترین دلیل استفاده از میلیمتر این است که مطمئن شویم هیچ دقتی را در دادههایی که میخوانیم و ارائه میدهیم ازدست نمیدهیم. استفاده از واحدی دقیق مانند میلیمتر به ما امکان میدهد اندازهگیریها را با دقت بالا نشان دهیم.
- استانداردسازی: میلیمتر واحد استاندارد طراحیشده در سراسر سرویسهای ما است. این ثبات به تضمین تجربه یکنواخت برای توسعهدهندگانی که با بخشهای مختلف میانای برنامهسازی کاربردی تعامل دارند کمک میکند.
- پشتیبانی گسترده از سیستم اندازهگیری: استفاده از واحد پایه مانند میلیمتر، تبدیل به هر واحد انتخابی دیگر را برای توسعهدهندگان آسان میکند، صرفنظر از اینکه با سیستمهای اندازهگیری متریک، امپریال، یا سیستمهای دیگر کار میکنند.
طول متغیر روزها
مدیریت زمان توسط Health API زمان کاربر را برای محاسبه طول متغیر روز ناشی از «ساعت تابستانی» یا سفر در اولویت قرار میدهد. هر نقطه داده با مُهر زمان فیزیکی UTC و اختلاف UTC فعال در زمان رویداد ذخیره میشود. این کار به سیستم اجازه میدهد:
- رویداد را به لحظه فیزیکی دقیقی نگاشت کنید.
- تصحیح زمان براساس بافت محلی کاربر برای تجمیع.
ساعت تابستانی
وقتی «ساعت تابستانی» اتفاق میافتد، «عقب کشیدن ساعت» منجر به یک روز مدنی ۲۵ ساعته میشود و خلاصه آن تاریخ حاوی ۲۵ ساعت داده خواهد بود. «جلو کشیدن ساعت در بهار» منجر به یک روز مدنی ۲۳ ساعته میشود که در آن زمان به زمان استاندارد برمیگردد.
سفر
سفر در مناطق زمانی مختلف میتواند باعث تغییرات قابلتوجهتری در مدت فیزیکی یک روز مدنی شود.
از نقطه پایانی dailyRollUp برای تطبیق دادن تفاوتهای منطقه زمانی استفاده کنید. این ویژگی بهطور خودکار دادهها را به روز تقویمی که در آن ثبت شدهاند نسبت میدهد (براساس زمان محلی کاربر) و بهطور مؤثری روز را با وجود تغییرات منطقه زمانی بههم «وصل میکند». برای جزئیات و مثالها،
تجمیع در روزهای تقویم را در
راهنمای «تجمیع دادهها» ببینید.