Health Platform API هي واجهة برمجة تطبيقات لنظام Android توفّر للمطوّرين واجهة واحدة لقراءة بيانات الصحة والعافية واللياقة البدنية السابقة للمستخدم وكتابتها ومشاركتها. من خلال "منصة الصحة"، يمكن للمستخدمين التحكّم في بياناتهم. يتحكّم المستخدمون في التطبيقات التي يمكنها قراءة أنواع مختلفة من البيانات أو تعديلها. تشمل أنواع بيانات Health Platform API الطول ومعدّل نبضات القلب وغير ذلك.
توفّر واجهة برمجة التطبيقات Health Platform API للمستخدمين آلية تخزين ومشاركة تتيح لهم اختيار التطبيقات التي يمكنها الوصول إلى بياناتهم الشخصية المتعلقة بالصحة واللياقة البدنية والعافية وعرضها. ويتيح ذلك لمطوّري التطبيقات عرض معلومات أكثر شمولاً للمستخدمين حول صحتهم، كما يتيح للمستخدمين مراقبة بياناتهم بفعالية أكبر.
توفّر حزمة تطوير البرامج Health Platform API لمطوّري تطبيقات Android كل ما يحتاجون إليه لمنح المستخدمين إذن الوصول إلى بيانات الصحة والعافية على أجهزة Samsung محدّدة، كما تتيح للتطبيقات تنفيذ عمليات مجمّعة، مثل إدراج البيانات وحذفها وقراءتها.
البدء
عند استخدام "منصة الصحة"، يجب مراعاة ما يلي:
- يجب أن تحصل تطبيقات العميل على أذونات دقيقة للوصول إلى البيانات للقراءة أو الكتابة من المستخدم.
- يمكن للمستخدم رفض الأذونات أو إلغاؤها في أي وقت بعد ذلك.
- تتوافق واجهة برمجة التطبيقات Health Platform API مع أجهزة Samsung محدّدة فقط.
-
HealthDataClientهو تطبيق العميل لمنصة Health Platform ونقطة دخول إليها.
تعرض الصورة التالية خطوات الدمج اللازمة التي يجب أن يتّبعها المطوّرون:
ملفات الإصدار
يتضمّن الإصدار الأول من "منصة الصحة" ما يلي:
- حزمة تطوير البرامج (SDK) للعميل: يجب تضمين حزمة تطوير البرامج هذه في تطبيقك لاستخدام Health Platform API. حزمة SDK هي مستودع Maven يمكنك تضمينه مباشرةً في ملفات الإصدار Gradle الخاصة بتطبيقك.
تثبيت "منصة الصحة"
ثبِّت Health Platform باتّباع الخطوات التالية:
في ملف build.gradle الجذر الخاص بالتطبيق، أضِف المستودع كما هو موضّح في المثال التالي:
allprojects {
. . .
repositories {
. . .
google()
}
}
أضِف اعتمادية على حزمة تطوير البرامج (SDK) لمنصة Health Platform في ملف build.gradle الخاص بالوحدة، كما هو موضّح في المثال التالي:
Kotlin
dependencies { . . . implementation("com.google.android.libraries.healthdata:health-data-api:1.0.0-alpha01") }
Groovy
dependencies { . . . implementation 'com.google.android.libraries.healthdata:health-data-api:1.0.0-alpha01' }
البيانات
تخزّن "منصة الصحة" بيانات الصحة واللياقة البدنية وتنظّمها. ويأخذ في الاعتبار أيضًا الاختلافات الأساسية بين كيفية قياس البيانات من أنواع مختلفة. على سبيل المثال، يتم قياس معدّل نبضات القلب على الفور، ولكن يتم احتساب عدد الخطوات على مدار فترة زمنية.
في ما يلي نظرة على العناصر الأساسية في "منصة الصحة" وأوجه الاختلاف بينها:
RawData: قياس وسجلّ بياناتDataType: هو أداة تحديد لأنواع البيانات الشائعة المتعلقة بالصحة واللياقة البدنية، مثل معدّل نبضات القلب أو نسبة الدهون في الجسم أو درجة حرارة الجسم، وتنسيقاتها، مثل الحقول أو القراءة فقط أو البيانات الاختيارية.- استبدِل
SampleData: بكائنRawDataيمثّل قياسًا فوريًا، مثل معدّل نبضات القلب أو ضغط الدم أو سرعة الجري. IntervalData: هو عنصرRawDataيمثّل قياسًا تراكميًا تمّ تسجيله على مدار فترة زمنية، مثل عدد الخطوات التي تمّ اتّخاذها أو المسافة المقطوعة أو السعرات الحرارية المحروقة.SeriesData: عنصرRawDataيضم سلسلة من القياسات على مدار فترة زمنية.SeriesDataمناسبة بشكل خاص لبيانات أجهزة الاستشعار العالية التردد، مثل عيّنات معدّل نبضات القلب المستمرة أثناء جلسة نشاط.
يتوافق كل من فئات RawData الثلاث مع فئة فرعية محددة من DataType: تتوافق SampleData وIntervalData وSeriesData مع SampleDataType وIntervalDataType وSeriesDataType على التوالي.
يتم تخصيص معرّف فريد (UID) لكل عنصر RawData من خلال Health Platform عند إدراجه. يمكنك استخدام معرّف UID هذا للإشارة إلى RawData
كائن معيّن في طلبات القراءة أو التعديل أو الحذف.
أنواع البيانات
تتضمّن "منصة الصحة" مجموعة كبيرة من أنواع البيانات الشائعة الاستخدام في تطبيقات الصحة واللياقة البدنية. توفّر البيانات المخزّنة مع أنواع البيانات المتاحة للمستخدمين عرضًا شاملاً لبياناتهم التاريخية المتعلقة بالصحة واللياقة البدنية والعافية، ما يتيح لهم الاطّلاع على أنشطتهم اليومية.
يتم تحديد كل نوع بيانات من خلال تنسيق البيانات الخاص به، والذي يتضمّن ما يلي:
- الحقول: حقول محدّدة أو عامة مرتبطة بنوع البيانات. على سبيل المثال، يحتوي نوع بيانات تشبّع الدم بالأكسجين (SpO2) على حقول مثل "العنوان" و"الملاحظات" و"النسبة المئوية".
- النوع: long أو double أو string أو enum
- السمة: للقراءة فقط أو مطلوبة أو اختيارية أو نطاق التحقّق من الصحة
قائمة بأنواع البيانات
يمكنك الاستفادة إلى أقصى حد من "منصة الصحة" من خلال فهم أنواع البيانات المتاحة. تتيح "منصة الصحة" أنواع البيانات الموضّحة في الجدول التالي. يتم تنظيم أنواع البيانات وفقًا لتنسيقها: عينة أو فاصل زمني أو سلسلة.
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. توفّر المنصة وظائف الإدراج والتعديل والحذف العادية للبيانات الأولية.
Read AggregatedData
تتيح المنصة للعملاء تطبيق دالة تجميع على الأنواع التالية من AggregatedData:
- استبدِل
StatisticalDataبمتوسط القيم أو الحد الأدنى أو الحد الأقصى في مجموعة منSampleDataأوSeriesData، مثل الحد الأدنى والحد الأقصى لمعدل نبضات القلب خلال جلسة نشاط. - استبدِل
CumulativeDataCumulativeDataبمجموع قيمIntervalData، مثل إجمالي عدد الخطوات خلال فترة يومية. CountData: هو عدد بسيط لعناصرRawDataالأساسية، مثل عدد جلسات النشاط في أسبوع معيّن. يمكن احتساب بيانات العدد لأنواع بيانات العيّنات والفواصل الزمنية والسلاسل.
الربط بواجهة برمجة التطبيقات Health Platform API
HealthDataClient هي نقطة الدخول إلى Health Platform API.
توضّح الخطوات التالية كيفية الاتصال بمنصّة Health Platform:
- استخدِم
HealthDataService.getClientلإنشاء مثيلات جديدة منHealthDataClient. - بعد ذلك، يجب أن يطلب تطبيق العميل إذنًا من المستخدم باستخدام طريقة
requestPermissions (Set).
تتولّى HealthDataClient تلقائيًا إدارة اتصالها بطبقة التخزين الأساسية، كما تتعامل مع جميع عمليات الاتصال بين العمليات (IPC) وتسلسل الطلبات الصادرة والردود الواردة.
أفلام مُقترَحة لك
- ملاحظة: يتم عرض نص الرابط عندما تكون JavaScript غير مفعّلة
- البيانات والتمارين النشطة
- تعديلات البيانات غير النشطة
- استخدام Jetpack Compose على Wear OS