يخزِّن تطبيق Health Connect بيانات الصحة واللياقة البدنية وينظّمها. ويشمل أيضًا طريقة قياس أنواع البيانات المختلفة. تشمل أنواع البيانات هذه قياسات معدّل نبضات القلب التي يتم إجراؤها على الفور، وعدد الخطوات التي يتم احتسابها بمرور الوقت، وبيانات النوم التي يتم جمعها في جلسات.
من المهم أولاً فهم أنواع البيانات والأذونات التي يوفّرها تطبيق Health Connect حتى تتمكّن من التخطيط لمتطلبات تطبيقك. وبناءً على ذلك، عليك مراجعة أنواع البيانات قبل إكمال متطلباتك.
فئات أنواع البيانات
يتيح تطبيق Health Connect أنواع البيانات المستخدَمة في معظم تطبيقات الصحة واللياقة البدنية لتوفير أكبر قدر ممكن من التنوع. يهدف تطبيق Health Connect إلى توفير عرض شامل وتخزين لبيانات الصحة واللياقة البدنية. وتنقسم أنواع البيانات هذه إلى الفئات التالية:
- النشاط: يسجّل هذا القسم أي نشاط يجريه المستخدم. ويمكن أن يشمل ذلك أنشطة الصحة واللياقة البدنية، مثل الجري والسباحة.
- قياسات الجسم: يتم من خلال هذه الفئة تسجيل البيانات الشائعة المتعلقة بالجسم، مثل وزن المستخدم ومعدل الأيض الأساسي.
- تتبُّع الدورة الشهرية: تسجّل هذه الميزة الدورات الشهرية ونقاط البيانات ذات الصلة، مثل النتيجة الثنائية لاختبار الإباضة.
- المعلومات الغذائية: يجمع هذا النوع بيانات عن شُرب الماء والسوائل والمعلومات الغذائية. يمثّل الأول كمية الماء التي يستهلكها المستخدم في شربة واحدة. ويشمل الأخير حقولاً اختيارية، مثل السعرات الحرارية والسكر والمغنيسيوم.
- النوم: تسجّل هذه الفئة بيانات الفترات الزمنية المتعلقة بمدة نوم المستخدم ونوعه.
- المؤشرات الحيوية: تسجّل هذه الفئة المعلومات الأساسية حول صحة المستخدم العامة. ويشمل ذلك بيانات مثل درجة حرارة الجسم ومستوى الغلوكوز في الدم وضغط الدم وتشبّع الدم بالأكسجين.
تنسيق نوع البيانات
يتم تخزين أنواع البيانات في Health Connect في عناصر هي فئات فرعية من
Record
.
لكل نوع من أنواع البيانات، هناك حقول مرتبطة تكون إما عامة، مثل time
وzoneOffset
، أو محددة، مثل title
وcount
وpercentage
.
تستخدم بعض الحقول أنواعًا بسيطة، مثل long أو double أو string، بينما تستخدم حقول أخرى أنواعًا معقّدة، مثل التعدادات والفئات مثل Instant
وZoneOffset
. يمكن أن تكون سمات هذه الحقول مطلوبة أو اختيارية. بعض السمات تكون للقراءة فقط، وبعضها الآخر يكون محصورًا بنطاق معيّن من القيم.
للاطّلاع على القائمة الكاملة بأنواع البيانات المتاحة وحقولها، يُرجى الرجوع إلى الفئات في Jetpack.
سمات البيانات الإضافية
تتضمّن البيانات في واجهة برمجة التطبيقات Health Connect أيضًا سمات البيانات الوصفية الموضّحة في القائمة التالية:
- معرّف Health Connect: يتم تعيين معرّف فريد (UID) لكل نقطة بيانات عند إنشائها. ويفيد ذلك في عمليات القراءة والكتابة العادية. يمكنك الاطّلاع على معرّف Health Connect لمزيد من التفاصيل.
- وقت آخر تعديل: يشير هذا الحقل إلى الطابع الزمني لآخر مرة تم فيها تعديل سجل. ويتم إنشاؤها تلقائيًا عند إنشاء السجلّ لأول مرة أو عند كل تعديل.
- مصدر البيانات: يخزِّن تطبيق Health Connect معلومات حول التطبيق الذي تم جمع البيانات منه. ويحتوي على اسم حزمة المصدر، والذي تتم إضافته تلقائيًا عند الإنشاء.
- الجهاز: تخزِّن Health Connect معلومات حول الجهاز الذي تم استخراج البيانات منه. تحتوي هذه السمة على الشركة المصنّعة للجهاز وطرازه، ويجب إدخال القيمة يدويًا.
- معرّف العميل: يوفّر Health Connect معرّفات العملاء لكي تتمكّن تطبيقات العميل من الرجوع إلى البيانات باستخدام معرّفاتها الخاصة، ما يساعد في حلّ التعارضات ويسهّل المزامنة. يتم إدخال هذه القيمة في السجلّ يدويًا.
- إصدار سجلّ العميل: بالإضافة إلى معرّف العميل، يوفّر Health Connect ميزة تحديد الإصدارات للمساعدة في تتبُّع التغييرات أثناء مزامنة البيانات. ويتم إدخال هذا الرقم في السجل يدويًا.
- طريقة التسجيل: يتيح لك تطبيق Health Connect معرفة طريقة تسجيل البيانات. وتشمل هذه الطرق تسجيل التطبيقات للبيانات بشكل غير مباشر (تلقائيًا)، وتسجيل المستخدمين للبيانات بشكل مباشر أو يدوي.
معرّف Health Connect
يُعيّن تطبيق Health Connect معرّفات فريدة (UID) لعناصر البيانات المُدرَجة حديثًا، وهي تحدّد عناصر البيانات وتميّزها عن غيرها. تكون معرّفات Health Connect مفيدة في طلبات القراءة أو الكتابة. لا تتطابق أرقام تعريف Health Connect مع أرقام تعريف العملاء. يُخصّص تطبيق العميل أرقام تعريف العميل، بينما يخصّص Health Connect أرقام تعريف Health Connect حصريًا.
يُرجى مراعاة الملاحظات التالية عند استخدام معرّفات Health Connect:
- تحتوي الجلسات على معرّف واحد في Health Connect، ولكن البيانات داخل الجلسات لها معرّفات خاصة بها في Health Connect.
- لا ترتبط معرّفات Health Connect بالطوابع الزمنية.
- قد تتطلّب بعض حالات الاستخدام تخزين معرّف Health Connect محدّد أثناء سير العمل. على سبيل المثال، يلزم توفّر معرّف محدّد لاسترداد إدخال البيانات الذي سجّله المستخدم وعرضه له.
الوقت المستغرَق في Health Connect
يجب أن تحدّد جميع البيانات التي تتم كتابتها في Health Connect معلومات إزاحة المنطقة الزمنية. يؤدي تحديد إزاحة المنطقة الزمنية إلى تمكين التطبيقات من قراءة البيانات لتمثيلها في الوقت المدني. التوقيت المدني هو التوقيت المحلي الذي يهم المستخدم، وليس بالضرورة التوقيت العالمي المتفق عليه (UTC).
في حالات نادرة، قد لا يتوفّر إزاحة المنطقة الزمنية. عند حدوث ذلك في نظام التشغيل Android 14 (المستوى 34 من واجهة برمجة التطبيقات)، يضبط تطبيق Health Connect إزاحة المنطقة الزمنية استنادًا إلى المنطقة الزمنية التلقائية للنظام على الجهاز. في الإصدار 13 من نظام التشغيل Android والإصدارات الأقدم (المستوى 33 من واجهة برمجة التطبيقات والإصدارات الأقدم)، يمكن الكتابة إلى Health Connect بدون تحديد أي معلومات عن الإزاحة الزمنية، ويجب تجنُّب ذلك قدر الإمكان.
إعدادات الوقت والمنطقة
يؤدي تحديد معلومات إزاحة المنطقة الزمنية أثناء كتابة البيانات إلى توفير معلومات المنطقة الزمنية عند قراءة البيانات في Health Connect. ومع ذلك، قد يتعذّر ذلك في حالات معيّنة، مثل عدم توفير إزاحة المنطقة الزمنية. يجب أن يكون تطبيقك مستعدًا للتعامل مع كلا النوعين من البيانات بطريقة منطقية في ظروفك المحددة.
الأذونات
قبل طلب أي أذونات، يجب أن يوضّح تطبيقك هذه الأذونات في ملف البيان أولاً. راجِع الجداول التالية للاطّلاع على عملية الربط الكاملة بين أنواع البيانات وأذوناتها.
الإصدار 1.0.0-alpha10 والإصدارات الأحدث
مرجع الأذونات | بيان إذن القراءة |
---|---|
عمليات القراءة في الخلفية |
android.permission.health.READ_HEALTH_DATA_IN_BACKGROUND
|
قراءات السجلّ |
android.permission.health.READ_HEALTH_DATA_HISTORY
|
نوع فئة السجلّ | بيان إذن القراءة والكتابة |
---|---|
ActiveCaloriesBurned |
android.permission.health.READ_ACTIVE_CALORIES_BURNED android.permission.health.WRITE_ACTIVE_CALORIES_BURNED |
BasalBodyTemperature |
android.permission.health.READ_BASAL_BODY_TEMPERATURE android.permission.health.WRITE_BASAL_BODY_TEMPERATURE |
BasalMetabolicRate |
android.permission.health.READ_BASAL_METABOLIC_RATE android.permission.health.WRITE_BASAL_METABOLIC_RATE |
BloodGlucose |
android.permission.health.READ_BLOOD_GLUCOSE android.permission.health.WRITE_BLOOD_GLUCOSE |
BloodPressure |
android.permission.health.READ_BLOOD_PRESSURE android.permission.health.WRITE_BLOOD_PRESSURE |
BodyFat |
android.permission.health.READ_BODY_FAT android.permission.health.WRITE_BODY_FAT |
BodyTemperature |
android.permission.health.READ_BODY_TEMPERATURE android.permission.health.WRITE_BODY_TEMPERATURE |
BodyWaterMass |
android.permission.health.READ_BODY_WATER_MASS android.permission.health.WRITE_BODY_WATER_MASS |
BoneMass |
android.permission.health.READ_BONE_MASS android.permission.health.WRITE_BONE_MASS |
CervicalMucus |
android.permission.health.READ_CERVICAL_MUCUS android.permission.health.WRITE_CERVICAL_MUCUS |
CyclingPedalingCadence |
android.permission.health.READ_EXERCISE android.permission.health.WRITE_EXERCISE |
المسافة |
android.permission.health.READ_DISTANCE android.permission.health.WRITE_DISTANCE |
ElevationGained |
android.permission.health.READ_ELEVATION_GAINED android.permission.health.WRITE_ELEVATION_GAINED |
ExerciseSession |
android.permission.health.READ_EXERCISE android.permission.health.READ_EXERCISE_ROUTE android.permission.health.WRITE_EXERCISE android.permission.health.WRITE_EXERCISE_ROUTE نوع التمرينEXERCISE_TYPE_BIKING EXERCISE_TYPE_BIKING_HAND EXERCISE_TYPE_BIKING_MOUNTAIN EXERCISE_TYPE_BIKING_ROAD EXERCISE_TYPE_BIKING_SPINNING EXERCISE_TYPE_BIKING_STATIONARY EXERCISE_TYPE_BIKING_UTURN EXERCISE_TYPE_CANOEING EXERCISE_TYPE_CROSSFIT EXERCISE_TYPE_DANCING EXERCISE_TYPE_ELLIPTICAL EXERCISE_TYPE_GOLF EXERCISE_TYPE_HORSEBACK_RIDING EXERCISE_TYPE_KAYAKING EXERCISE_TYPE_KICKBOXING EXERCISE_TYPE_MARTIAL_ARTS EXERCISE_TYPE_PILATES EXERCISE_TYPE_ROLLERBLADING EXERCISE_TYPE_RUNNING EXERCISE_TYPE_RUNNING_JOGGING EXERCISE_TYPE_RUNNING_SAND |
FloorsClimbed |
android.permission.health.READ_FLOORS_CLIMBED android.permission.health.WRITE_FLOORS_CLIMBED |
HeartRate |
android.permission.health.READ_HEART_RATE android.permission.health.WRITE_HEART_RATE |
HeartRateVariabilityRmssd |
android.permission.health.READ_HEART_RATE_VARIABILITY android.permission.health.WRITE_HEART_RATE_VARIABILITY |
الارتفاع |
android.permission.health.READ_HEIGHT android.permission.health.WRITE_HEIGHT |
الترطيب |
android.permission.health.READ_HYDRATION android.permission.health.WRITE_HYDRATION |
IntermenstrualBleeding |
android.permission.health.READ_INTERMENSTRUAL_BLEEDING android.permission.health.WRITE_INTERMENSTRUAL_BLEEDING |
LeanBodyMass |
android.permission.health.READ_LEAN_BODY_MASS android.permission.health.WRITE_LEAN_BODY_MASS |
MenstruationFlow |
android.permission.health.READ_MENSTRUATION android.permission.health.WRITE_MENSTRUATION |
MindfulnessSession |
android.permission.health.READ_MINDFULNESS android.permission.health.WRITE_MINDFULNESS |
التغذية |
android.permission.health.READ_NUTRITION android.permission.health.WRITE_NUTRITION |
OvulationTest |
android.permission.health.READ_OVULATION_TEST android.permission.health.WRITE_OVULATION_TEST |
مستوى تشبّع الدم بالأكسجين |
android.permission.health.READ_OXYGEN_SATURATION android.permission.health.WRITE_OXYGEN_SATURATION |
PlannedExerciseSession |
android.permission.health.READ_PLANNED_EXERCISE android.permission.health.WRITE_PLANNED_EXERCISE |
الطاقة |
android.permission.health.READ_POWER android.permission.health.WRITE_POWER |
RespiratoryRate |
android.permission.health.READ_RESPIRATORY_RATE android.permission.health.WRITE_RESPIRATORY_RATE |
RestingHeartRate |
android.permission.health.READ_RESTING_HEART_RATE android.permission.health.WRITE_RESTING_HEART_RATE |
SexualActivity |
android.permission.health.READ_SEXUAL_ACTIVITY android.permission.health.WRITE_SEXUAL_ACTIVITY |
SkinTemperature |
android.permission.health.READ_SKIN_TEMPERATURE android.permission.health.WRITE_SKIN_TEMPERATURE |
SleepSession |
android.permission.health.READ_SLEEP android.permission.health.WRITE_SLEEP |
السرعة |
android.permission.health.READ_SPEED android.permission.health.WRITE_SPEED |
الخطوات |
android.permission.health.READ_STEPS android.permission.health.WRITE_STEPS |
StepsCadence |
android.permission.health.READ_STEPS android.permission.health.WRITE_STEPS |
TotalCaloriesBurned |
android.permission.health.READ_TOTAL_CALORIES_BURNED android.permission.health.WRITE_TOTAL_CALORIES_BURNED |
السعة القصوى للأكسجين |
android.permission.health.READ_VO2_MAX android.permission.health.WRITE_VO2_MAX |
الوزن |
android.permission.health.READ_WEIGHT android.permission.health.WRITE_WEIGHT |
دفع الكرسي المتحرّك |
android.permission.health.READ_WHEELCHAIR_PUSHES android.permission.health.WRITE_WHEELCHAIR_PUSHES |
بالنسبة إلى الإصدار 1.0.0-alpha09 والإصدارات الأقدم
نوع فئة السجلّ | بيان إذن القراءة والكتابة |
---|---|
ActiveCaloriesBurned |
androidx.health.permission.ActiveCaloriesBurned.READ androidx.health.permission.ActiveCaloriesBurned.WRITE |
BasalBodyTemperature |
androidx.health.permission.BasalBodyTemperature.READ androidx.health.permission.BasalBodyTemperature.WRITE |
BasalMetabolicRate |
androidx.health.permission.BasalMetabolicRate.READ androidx.health.permission.BasalMetabolicRate.WRITE |
BloodGlucose |
androidx.health.permission.BloodGlucose.READ androidx.health.permission.BloodGlucose.WRITE |
BloodPressure |
androidx.health.permission.BloodPressure.READ androidx.health.permission.BloodPressure.WRITE |
BodyFat |
androidx.health.permission.BodyFat.READ androidx.health.permission.BodyFat.WRITE |
BodyTemperature |
androidx.health.permission.BodyTemperature.READ androidx.health.permission.BodyTemperature.WRITE |
BodyWaterMass |
androidx.health.permission.BodyWaterMass.READ androidx.health.permission.BodyWaterMass.WRITE |
BoneMass |
androidx.health.permission.BoneMass.READ androidx.health.permission.BoneMass.WRITE |
CervicalMucus |
androidx.health.permission.CervicalMucus.READ androidx.health.permission.CervicalMucus.WRITE |
CyclingPedalingCadence |
androidx.health.permission.Exercise.READ androidx.health.permission.Exercise.WRITE |
المسافة |
androidx.health.permission.Distance.READ androidx.health.permission.Distance.WRITE |
ElevationGained |
androidx.health.permission.ElevationGained.READ androidx.health.permission.ElevationGained.WRITE |
ExerciseSession |
androidx.health.permission.ExerciseSession.READ androidx.health.permission.ExerciseSession.WRITE نوع التمرينEXERCISE_TYPE_BIKING EXERCISE_TYPE_BIKING_HAND EXERCISE_TYPE_BIKING_MOUNTAIN EXERCISE_TYPE_BIKING_ROAD EXERCISE_TYPE_BIKING_SPINNING EXERCISE_TYPE_BIKING_STATIONARY EXERCISE_TYPE_BIKING_UTURN EXERCISE_TYPE_CANOEING EXERCISE_TYPE_CROSSFIT EXERCISE_TYPE_DANCING EXERCISE_TYPE_ELLIPTICAL EXERCISE_TYPE_GOLF EXERCISE_TYPE_HORSEBACK_RIDING EXERCISE_TYPE_KAYAKING EXERCISE_TYPE_KICKBOXING EXERCISE_TYPE_MARTIAL_ARTS EXERCISE_TYPE_PILATES EXERCISE_TYPE_ROLLERBLADING EXERCISE_TYPE_RUNNING EXERCISE_TYPE_RUNNING_JOGGING EXERCISE_TYPE_RUNNING_SAND |
FloorsClimbed |
androidx.health.permission.FloorsClimbed.READ androidx.health.permission.FloorsClimbed.WRITE |
HeartRate |
androidx.health.permission.HeartRate.READ androidx.health.permission.HeartRate.WRITE |
HeartRateVariabilityRmssd |
androidx.health.permission.HeartRateVariability.READ androidx.health.permission.HeartRateVariability.WRITE |
الارتفاع |
androidx.health.permission.Height.READ androidx.health.permission.Height.WRITE |
الترطيب |
androidx.health.permission.Hydration.READ androidx.health.permission.Hydration.WRITE |
IntermenstrualBleeding |
androidx.health.permission.IntermenstrualBleeding.READ androidx.health.permission.IntermenstrualBleeding.WRITE |
LeanBodyMass |
androidx.health.permission.LeanBodyMass.READ androidx.health.permission.LeanBodyMass.WRITE |
MenstruationFlow |
androidx.health.permission.Menstruation.READ androidx.health.permission.Menstruation.WRITE |
التغذية |
androidx.health.permission.Nutrition.READ androidx.health.permission.Nutrition.WRITE |
OvulationTest |
androidx.health.permission.OvulationTest.READ androidx.health.permission.OvulationTest.WRITE |
مستوى تشبّع الدم بالأكسجين |
androidx.health.permission.OxygenSaturation.READ androidx.health.permission.OxygenSaturation.WRITE |
PlannedExerciseSession |
androidx.health.permission.PlannedExerciseSession.READ androidx.health.permission.PlannedExerciseSession.WRITE |
الطاقة |
androidx.health.permission.Power.READ androidx.health.permission.Power.WRITE |
RespiratoryRate |
androidx.health.permission.RespiratoryRate.READ androidx.health.permission.RespiratoryRate.WRITE |
RestingHeartRate |
androidx.health.permission.RestingHeartRate.READ androidx.health.permission.RestingHeartRate.WRITE |
SexualActivity |
androidx.health.permission.SexualActivity.READ androidx.health.permission.SexualActivity.WRITE |
SleepSession |
androidx.health.permission.SleepSession.READ androidx.health.permission.SleepSession.WRITE |
السرعة |
androidx.health.permission.Speed.READ androidx.health.permission.Speed.WRITE |
الخطوات |
androidx.health.permission.Steps.READ androidx.health.permission.Steps.WRITE |
StepsCadence |
androidx.health.permission.Steps.READ androidx.health.permission.Steps.WRITE |
TotalCaloriesBurned |
androidx.health.permission.TotalCaloriesBurned.READ androidx.health.permission.TotalCaloriesBurned.WRITE |
السعة القصوى للأكسجين |
androidx.health.permission.VO2Max.READ androidx.health.permission.VO2Max.WRITE |
الوزن |
androidx.health.permission.Weight.READ androidx.health.permission.Weight.WRITE |
دفع الكرسي المتحرّك |
androidx.health.permission.WheelchairPushes.READ androidx.health.permission.WheelchairPushes.WRITE |
مراجعة أنواع البيانات والأذونات
بعد أن تخطّط لأنواع البيانات والأذونات، يمكنك تنفيذها أثناء التطوير.
عند مراجعة تطبيقك قبل تحميله إلى "متجر Play"، تحقَّق جيدًا من قائمة أنواع البيانات والأذونات التي يتطلّبها تطبيقك. يتيح لك ذلك الإفصاح بدقة عن كيفية استخدام تطبيقك للبيانات.
عند الاستعداد لنشر تطبيقك على "متجر Play"، عليك الإفصاح عن إمكانية الوصول إلى أنواع بيانات Health Connect التي يستخدمها تطبيقك. وبخلاف ذلك، قد تظهر للمستخدمين رسالة خطأ تفيد بأنّ تطبيقك لا يمكنه الوصول إلى أنواع بيانات Health Connect لأنّها تتطلّب موافقة خاصة.