Health Platform API یک API Android است که برای توسعه دهندگان یک رابط واحد برای خواندن، نوشتن و به اشتراک گذاری داده های سلامت، تندرستی و تناسب اندام قبلی کاربر ارائه می دهد. با پلتفرم سلامت، کاربران کنترل داده های خود را دارند. کاربران کنترل می کنند که کدام برنامه ها به انواع مختلف داده ها دسترسی خواندن یا نوشتن دارند. انواع داده های API Health Platform شامل قد، ضربان قلب و غیره است.
سلامت پلتفرم API به کاربران مکانیزم ذخیره سازی و اشتراک گذاری می دهد که به آنها امکان می دهد انتخاب کنند به کدام برنامه ها دسترسی داشته باشند و داده های سلامتی، تناسب اندام و سلامتی شخصی خود را نمایش دهند. سپس به توسعه دهندگان برنامه اجازه می دهد تا دید کامل تری از سلامت کاربران را به کاربران نشان دهند و به کاربران اجازه می دهد تا به طور مؤثرتری بر داده های آنها نظارت داشته باشند.
کیت توسعهدهنده نرمافزار Health Platform API به توسعهدهندگان برنامههای Android هر آنچه را که برای دسترسی به دادههای سلامت و تندرستی کاربر در دستگاههای منتخب سامسونگ نیاز دارند، میدهد و به برنامهها اجازه میدهد عملیاتهای انبوه مانند درج، حذف و خواندن دادهها را انجام دهند.
شروع کنید
هنگام استفاده از Health Platform، موارد زیر را در نظر داشته باشید:
- برنامه های سرویس گیرنده باید مجوزهای دقیق برای دسترسی خواندن یا نوشتن از کاربر دریافت کنند.
- کاربر می تواند مجوزها را رد کند یا در هر مرحله پس از آن، مجوزها را لغو کند.
- Health Platform API فقط از دستگاه های منتخب سامسونگ پشتیبانی می کند.
-
HealthDataClient
مشتری پلتفرم سلامت و نقطه ورود به پلتفرم سلامت است.
تصویر زیر مراحل یکپارچه سازی لازم را که توسعه دهندگان باید دنبال کنند نشان می دهد:
انتشار فایل ها
نسخه Health Platform V1 شامل موارد زیر است:
- Client SDK : برای استفاده از Health Platform API این SDK را در برنامه خود قرار دهید. SDK یک مخزن Maven است که می توانید مستقیماً در فایل های ساخت Gradle برنامه خود قرار دهید.
پلتفرم Health را نصب کنید
با استفاده از مراحل زیر پلتفرم Health را نصب کنید:
همانطور که در مثال زیر نشان داده شده است، در فایل root build.gradle
برنامه، repo را اضافه کنید:
allprojects {
...
repositories {
...
google()
}
}
همانطور که در مثال زیر نشان داده شده است، یک وابستگی به Health Platform SDK در فایل build.gradle
ماژول خود اضافه کنید:
dependencies {
…
implementation 'com.google.android.libraries.healthdata:health-data-api:1.0.0-alpha01'
}
داده ها
Health Platform دادههای سلامت و تناسب اندام را ذخیره و ساختار میدهد. همچنین تفاوت های اصلی بین نحوه اندازه گیری داده های انواع مختلف را در نظر می گیرد. به عنوان مثال، اندازه گیری ضربان قلب بلافاصله انجام می شود، اما شمارش گام ها در یک دوره زمانی انجام می شود.
در اینجا نگاهی به اشیاء مرکزی در Health Platform و تفاوت آنها داریم:
-
RawData
: اندازه گیری و رکورد داده. -
DataType
: یک مشخص کننده برای انواع رایج داده های سلامتی و تناسب اندام، مانند ضربان قلب، چربی بدن، یا دمای بدن، و قالب های آنها، مانند فیلدها، فقط خواندنی یا اختیاری. -
SampleData
: یک شیءRawData
که یک اندازه گیری آنی است، مانند ضربان قلب، فشار خون، یا سرعت دویدن. -
IntervalData
: یک شیءRawData
که یک اندازه گیری تجمعی است که در یک دوره زمانی انجام می شود، مانند تعداد گام های برداشته شده، مسافت طی شده یا کالری سوزانده شده. -
SeriesData
: یک شیءRawData
که دنباله ای از اندازه گیری ها را در یک دوره زمانی محصور می کند.SeriesData
به ویژه برای دادههای حسگر با فرکانس بالا، مانند نمونههای ضربان قلب مداوم در طول یک جلسه فعالیت، مناسب است.
هر یک از سه کلاس RawData
مربوط به زیر کلاس خاصی از DataType
است: SampleData
، IntervalData
، و SeriesData
به ترتیب با SampleDataType
، IntervalDataType
و SeriesDataType
مطابقت دارند.
به هر شیء RawData
یک شناسه منحصر به فرد (UID) توسط پلتفرم Health هنگام درج آن اختصاص داده می شود. میتوانید از این UID برای ارجاع به یک شیء RawData
خاص در درخواستهای خواندن، بهروزرسانی یا حذف استفاده کنید.
انواع داده ها
پلتفرم سلامت شامل مجموعه گسترده ای از انواع داده است که معمولاً در برنامه های سلامت و تناسب اندام استفاده می شود. دادههای ذخیرهشده با انواع دادههای موجود، دید جامعی از دادههای مربوط به سلامت، تناسب اندام و سلامتی خود را در اختیار کاربران قرار میدهد و بینشی از فعالیتهای روزانهشان میدهد.
هر نوع داده با فرمت داده خود تعریف می شود که شامل موارد زیر است:
- فیلدها: فیلدهای خاص یا عمومی مرتبط با نوع داده. به عنوان مثال، نوع داده اشباع اکسیژن خون (SpO2) دارای فیلدهایی مانند عنوان، یادداشت ها و درصد است.
- نوع: طولانی، دوتایی، رشته ای یا enum.
- مشخصه: محدوده فقط خواندنی، مورد نیاز، اختیاری یا اعتبارسنجی.
فهرست انواع داده ها
با درک انواع داده های موجود، از پلتفرم سلامت حداکثر استفاده را ببرید. Health Platform از انواع داده های نشان داده شده در جدول زیر پشتیبانی می کند. انواع داده ها بر اساس قالب آنها سازماندهی می شوند: نمونه، بازه یا سری.
انواع SampleData
:
DataType.BasalMetabolicRateDataType | BASAL_METABOLIC_RATE | مورد نیاز |
DataType.BloodGlucoseDataType | BLOOD_GLUCOSE | الزامی و اختیاری |
DataType.BloodPressureDataType | BLOOD_PRESSURE | الزامی و اختیاری |
DataType.BodyFatDataType | BODY_FAT | مورد نیاز |
DataType.BodyTemperatureDataType | BODY_TEMPERATURE | الزامی و اختیاری |
DataType.BoneMassDataType | BONE_MASS | مورد نیاز |
DataType.CervicalMucusDataType | CERVICAL_MUCUS | اختیاری |
DataType.CervicalPositionDataType | CERVICAL_POSITION | اختیاری |
DataType.CyclingPedalingCadenceDataType | CYCLING_PEDALING_CADENCE | مورد نیاز |
DataType.DateOfBirthDataType | DATE_OF_BIRTH | فقط خواندن |
DataType.GenderDataType | GENDER | فقط خواندن |
DataType.HeartRateDataType | HEART_RATE | مورد نیاز |
DataType.HeightDataType | HEIGHT | مورد نیاز |
DataType.HipCircumferenceDataType | HIP_CIRCUMFERENCE | مورد نیاز |
DataType.HrvDifferentialIndexDataType | HRV_DIFFERENTIAL_INDEX | مورد نیاز |
DataType.HrvRmssdDataType | HRV_RMSSD | مورد نیاز |
DataType.HrvSDataType | HRV_S | مورد نیاز |
DataType.HrvSd2DataType | HRV_SD2 | مورد نیاز |
DataType.HrvSdannDataType | HRV_SDANN | مورد نیاز |
DataType.HrvSdnnDataType | HRV_SDNN | مورد نیاز |
DataType.HrvSdnnIndexDataType | HRV_SDNN_INDEX | مورد نیاز |
DataType.HrvSdnnIndexDataType | HRV_SDNN_INDEX | مورد نیاز |
DataType.HrvSdsdDataType | HRV_SDSD | مورد نیاز |
DataType.HrvTinnDataType | HRV_TINN | مورد نیاز |
DataType.LeanBodyMassDataType | LEAN_BODY_MASS | مورد نیاز |
DataType.LocationDataType | LOCATION | مورد نیاز |
DataType.MenstruationDataType | MENSTRUATION | اختیاری |
DataType.OvulationTestDataType | OVULATION_TEST | مورد نیاز |
DataType.OxygenSaturationDataType | OXYGEN_SATURATION | مورد نیاز |
DataType.PaceDataType | PACE | مورد نیاز |
DataType.PowerDataType | POWER | مورد نیاز |
DataType.RespiratoryRateDataType | RESPIRATORY_RATE | مورد نیاز |
DataType.RestingHeartRateDataType | RESTING_HEART_RATE | مورد نیاز |
DataType.SexualActivityDataType | SEXUAL_ACTIVITY | مورد نیاز |
DataType.SpeedDataType | SPEED | مورد نیاز |
DataType.StepsCadenceDataType | STEPS_CADENCE | مورد نیاز |
DataType.Vo2MaxDataType | VO2_MAX | الزامی و اختیاری |
DataType.WaistCircumferenceDataType | WAIST_CIRCUMFERENCE | مورد نیاز |
DataType.WeightDataType | WEIGHT | مورد نیاز |
انواع IntervalData
:
DataType.ActiveEnergyDataType | ACTIVE_ENERGY_BURNED | مورد نیاز |
DataType.ActiveTimeDataType | ACTIVE_TIME | فقط خواندن |
DataType.ActivityEventDataType | ACTIVITY_EVENT | مورد نیاز |
DataType.ActivityLapDataType | ACTIVITY_LAP | اختیاری |
DataType.ActivitySessionDataType | ACTIVITY_SESSION | مورد نیاز |
DataType.BasalEnergyDataType | BASAL_ENERGY_BURNED | فقط خواندن |
DataType.DistanceDataType | DISTANCE | مورد نیاز |
DataType.ElevationGainedDataType | ELEVATION_GAINED | مورد نیاز |
DataType.FloorsClimbedDataType | FLOORS_CLIMBED | مورد نیاز |
DataType.HydrationDataType | HYDRATION | مورد نیاز |
DataType.NutritionDataType | NUTRITION | اختیاری |
DataType.RepetitionsDataType | REPETITIONS | مورد نیاز |
DataType.SleepSessionDataType | SLEEP_SESSION | اختیاری |
DataType.SleepStageDataType | SLEEP_STAGE | مورد نیاز |
DataType.StepsDataType | STEPS | مورد نیاز |
DataType.SwimmingStrokesDataType | SWIMMING_STROKES | الزامی و اختیاری |
DataType.TotalEnergyDataType | TOTAL_ENERGY_BURNED | فقط خواندن |
انواع SeriesData
:
DataType.CyclingPedalingCadenceSeriesDataType | CYCLING_PEDALING_CADENCE | مورد نیاز |
DataType.HeartRateSeriesDataType | HEART_RATE | مورد نیاز |
DataType.LocationSeriesDataType | LOCATION | مورد نیاز |
DataType.PaceSeriesDataType | PACE | مورد نیاز |
DataType.PowerSeriesDataType | POWER | مورد نیاز |
DataType.SpeedSeriesDataType | SPEED | مورد نیاز |
DataType.StepsCadenceSeriesDataType | STEPS_CADENCE | مورد نیاز |
توابع توسعه دهنده
در زیر مجموعه ای از توابع داده استاندارد موجود در Health Platform را شرح می دهد. این پلتفرم توابع استاندارد درج، به روز رسانی و حذف را برای داده های خام فراهم می کند.
AggregatedData را بخوانید
این پلتفرم به مشتریان این امکان را می دهد که یک تابع تجمیع را روی انواع زیر از AggregatedData
اعمال کنند:
-
StatisticalData
: مقادیر میانگین، حداقل یا حداکثر در مجموعهای ازSampleData
یاSeriesData
، مانند حداقل و حداکثر ضربان قلب در طول یک جلسه فعالیت. -
CumulativeData
: مجموع مقادیرIntervalData
، مانند تعداد کل گام ها در یک بازه روزانه. -
CountData
: یک شمارش ساده از تعداد اشیاءRawData
اساسی، مانند تعداد جلسات فعالیت در یک هفته معین. داده های شمارش را می توان برای انواع داده های نمونه، فاصله و سری محاسبه کرد.
به Health Platform API متصل شوید
HealthDataClient
نقطه ورود به API Health Platform است.
مراحل زیر نحوه اتصال به Health Platform را شرح می دهد:
- از
HealthDataService.getClient
برای ایجاد نمونه های جدیدHealthDataClient
استفاده کنید. - سپس برنامه مشتری باید با استفاده از روش
requestPermissions (Set)
از کاربر اجازه درخواست کند.
HealthDataClient
به طور خودکار اتصال خود را به لایه ذخیره سازی زیرین مدیریت می کند و تمام ارتباطات بین فرآیندی (IPC) و سریال سازی درخواست های خروجی و پاسخ های دریافتی را مدیریت می کند.
برای شما توصیه می شود
- توجه: وقتی جاوا اسکریپت خاموش است، متن پیوند نمایش داده می شود
- داده ها و تمرین های فعال
- به روز رسانی داده های غیرفعال
- از Jetpack Compose در Wear OS استفاده کنید