صحة

  
إنشاء تطبيقات فعّالة للصحة بطريقة لا تقتصر على النظام الأساسي
التعديل الأخير الإصدار المستقر إصدار مرشح الإصدار التجريبي إصدار ألفا
3 نيسان (أبريل) 2024 - 1.0.0-rc02 - 1.1.0-alpha02

إعلان التبعيات

لإضافة تبعية إلى Health، يجب إضافة مستودع Maven من Google إلى مشروعك. لمزيد من المعلومات، يمكنك الاطّلاع على مستودع Maven من Google.

أضف التبعيات للعناصر التي تحتاجها في ملف build.gradle لتطبيقك أو الوحدة الخاصة بك:

رائع

dependencies {
    implementation "androidx.health:health-services-client:1.1.0-alpha02"
}

Kotlin

dependencies {
    implementation("androidx.health:health-services-client:1.1.0-alpha02")
}

ملاحظات

تساعدنا ملاحظاتك في تحسين Jetpack. يُرجى إخبارنا إذا اكتشفت مشاكل جديدة أو كانت لديك أفكار لتحسين هذه المكتبة. يُرجى الاطّلاع على المشاكل الحالية في هذه المكتبة قبل إنشاء مشكلة جديدة. يمكنك إضافة تصويتك إلى مشكلة حالية من خلال النقر على زر النجمة.

إنشاء عدد جديد

راجِع مستندات أداة تتبُّع المشاكل للحصول على مزيد من المعلومات.

الإصدار 1.0 من برنامج Health Connect Client

الإصدار 1.0.0-alpha04

24 آب (أغسطس) 2022

اعتبارًا من 1.0.0-alpha04، تم نقل androidx.health:health-connect-client إلى androidx.health.connect:connect-client. في الإصدارات المستقبلية، يُرجى استخدام androidx.health.connect:connect-client وملاحظات الإصدار المرتبطة به في صفحة Health Connect.

لنقل البيانات، ما عليك سوى تغيير استيراد البيانات الاعتمادية من androidx.health:health-connect-client:1.0.0-alpha03 إلى androidx.health.connect:connect-client:1.0.0-alpha04.

الإصدار 1.0.0-alpha03

27 تموز (يوليو) 2022

تم طرح "androidx.health:health-connect-client:1.0.0-alpha03". يحتوي الإصدار 1.0.0-alpha03 على هذه الالتزامات.

الميزات الجديدة

  • ملخص التغييرات الجديدة في واجهة برمجة التطبيقات: تمت إضافة مجموعة من الوحدات إلى واجهات برمجة التطبيقات المخصصة للقراءة والكتابة والتجميع. يمكن للتطبيقات الآن استرداد سجلات أو كتابتها بالوحدة التي تختارها، مثل الغرام أو الملليغرام لمواد NutritionRecord الغذائية.

تغييرات واجهة برمجة التطبيقات

  • يجب إصلاح الخطأ List<DataOrigin> ليكون Set<DataOrigin> في مختلف كائنات الاستجابة للطلبات. (I42342)
  • إصلاح وحدة إجمالي السعرات الحرارية الأساسية من الطاقة->الطاقة. (I0b429)
  • نماذج لفئات رسومية للسلسلة المنقولة داخل سجلّات السلاسل (Ica9bb):
    • CyclingPedalingCadence -> CyclingPedalingCadenceRecord.Sample
    • HeartRate -> HeartRateRecord.Sample
    • StepsCadence -> StepsCadenceRecord.Sample
  • يمكنك إيقاف الفئة HealthDataRequestPermission لصالح PermissionController.createRequestPermissionActivityContract، لأنّ ذلك يعزّز قابلية الاكتشاف بشكل أفضل واستخدام المَعلمات الموحّدة. (I81e7f)
  • تمت إضافة أوقية سائلة أمريكية إلى حجم الصوت. (I5f03d)
  • نوع وحدة السرعة المضافة (I1d574)
  • نوع وحدة النسبة المئوية المضافة (I08f23)
  • نوع وحدة الضغط المُضافة (Ifb01f)
  • نوع وحدة الكتلة المضافة (Ifd81a)
  • نوع وحدة الحجم المضاف (I59ad1)
  • تمت إضافة نوع وحدة الطاقة. تم نقل نموذج فئة سلسلة الطاقة داخل صف واحد (PowerRecord). (I5b1e5)
  • نوع وحدة الطاقة المضافة (I983ae)
  • نوع وحدة درجة الحرارة المُضافة (I4cdb5)
  • أعد تسمية مراجع النشاط لتكون خاصة بالتمرين، بما في ذلك (I3f936):
    • تمت إعادة التسمية: ActivityLap -> ExerciseLapRecord
    • تمت إعادة التسمية: ActivityEvent -> ExerciseEventRecord
    • تمت إعادة التسمية: Repetitions -> ExerciseRepetitionsRecord
    • تمت إعادة التسمية: ActivitySession -> ExerciseSessionRecord
  • تم نقل البيانات الوصفية للحزمة المضمّنة ضمن السجلات. (Ie0835)
  • وحدة الطول المستخدَمة في كل السجلّات المتبقية (Ib10dd):
    • ActivityLapRecord
    • ElevationGainedRecord
    • HeightRecord
    • HipCircumferenceRecord
    • WaistCircumferenceRecord
  • نوع وحدة الطول المُضافة (Idae39)
  • تعديل مصطلحات وصف CervicalMucus (I25a2b):
    • CervicalMucus.Amount -> CervicalMucusRecord.Texture
    • CervicalMucus.Appearance -> CervicalMucusRecord.Sensation
  • تمت إضافة لاحقة "سجلّ" إلى جميع أسماء فئات السجلّات (I1ffc2).

إصلاح الأخطاء

  • يجب حلّ المشاكل في Proguard عندما يكون المحتوى بتنسيق lib متناسقًا مع نص الإصدار وتكون القيمة minifyEnabled true. (I78933)
  • لإخفاء المستندات غير المخصّصة للاستخدام العام. (I7a08f)
  • يصلح المشكلة المتعلقة بالعملاء الذين قد يكون لديهم تبعيات خاصة بالنموذج الأوّلي.(https://android-review.googlesource.com/c/platform/frameworks/support/+/2105430)

الإصدار 1.0.0-alpha02

1 حزيران (يونيو) 2022

تم طرح "androidx.health:health-connect-client:1.0.0-alpha02". يحتوي الإصدار 1.0.0-alpha02 على هذه الالتزامات.

تغييرات واجهة برمجة التطبيقات

  • تم إيقاف hasMetric وgetMetric في AggregationResult، وتمت إضافة عاملي تشغيل يحتويان على العناصر والحصول عليها (I7cc7c)
  • لإضافة OvulationTest.Result.HIGH وOvulationTest.Result.INCONCLUSIVE (I9f9c4)

إصلاح الأخطاء

  • يجب تقليل متطلبات حِزم تطوير البرامج (SDK) إلى 26. (I6d201)

الإصدار 1.0.0-alpha01

11 أيار (مايو) 2022

تم طرح "androidx.health:health-connect-client:1.0.0-alpha01". يحتوي الإصدار 1.0.0-alpha01 على هذه الالتزامات.

الميزات الجديدة

  • واجهة برمجة تطبيقات لقراءة سجلات اللياقة البدنية والصحة التي تتم مشاركتها بواسطة تطبيقات أخرى.
  • واجهة برمجة تطبيقات لكتابة سجلات اللياقة البدنية والصحة لمشاركتها مع تطبيقات أخرى
  • واجهة برمجة التطبيقات لاسترداد المقاييس المجمّعة للسجلات التي يمكن الوصول إليها.
  • واجهة برمجة التطبيقات لاسترداد التغييرات المتزايدة (إدراج أو تعديل أو حذف) للسجلات من خلال تطبيقات أخرى.
  • واجهة برمجة التطبيقات لطلب أذونات المستخدمين الصحية.
  • واجهة برمجة التطبيقات للتحقق من الأذونات أو إبطال أذونات الصحة الممنوحة.

الإصدار 1.1 من برنامج عميل الخدمات الصحية

الإصدار 1.1.0-alpha02

13 كانون الأول (ديسمبر) 2023

تم طرح "androidx.health:health-services-client:1.1.0-alpha02". يحتوي الإصدار 1.1.0-alpha02 على هذه الالتزامات.

تغييرات واجهة برمجة التطبيقات

  • استخدِم مصدرًا واحدًا للحقيقة لسمات ExerciseEvent المتوافقة. (I03308)

إصلاح الأخطاء

  • إصلاح أخطاء طفيفة وتحسينات على المستندات.

الإصدار 1.1.0-alpha01

9 آب (أغسطس) 2023

تم طرح "androidx.health:health-services-client:1.1.0-alpha01". يحتوي الإصدار 1.1.0-alpha01 على هذه الالتزامات.

الميزات الجديدة

  • تمت إضافة ExerciseEvent واجهات برمجة تطبيقات إلى جانب الحدث الملموس الأول: GolfShotEvent. تتيح قواعد "ExerciseEvent" الأساسية للمطوّرين طلب الدعم وطلب تلقّي إشعارات عندما ترصد الساعة إجراءً ما. GolfShotEvent كمثال، يمكن للمطوّرين تلقّي إشعارات عندما يسدد المستخدم ضربة غولف بالإضافة إلى استلام نوع الأرجوحة الذي تم التعرّف عليه.

تغييرات واجهة برمجة التطبيقات

  • يجب السماح لعملاء حزمة تطوير البرامج (SDK) لنظام WHS باستخدام وظائف GolfShotEvent. (I76b03)

إصلاح الأخطاء

  • وبدلاً من طرح استثناءات بشكل كبير عند رؤية قدرات غير معروفة لأحداث التمارين الرياضية، يمكنك فلترتها من القائمة. (I06afc)

الإصدار 1.0 من برنامج عميل الخدمات الصحية

الإصدار 1.0.0-rc02

3 نيسان (أبريل) 2024

تم طرح "androidx.health:health-services-client:1.0.0-rc02". يحتوي الإصدار 1.0.0-rc02 على هذه الالتزامات. هذا إصدار مخصص لإصلاح الأخطاء فقط ولا يحتوي على تغييرات في واجهة برمجة التطبيقات.

إصلاح الأخطاء

  • إصلاح العديد من المشكلات لتحسين موثوقية IPC
  • تم إصلاح مشكلة حيث قد يؤدي الاتصال بـ startExercise في نفس الوقت مع prepareExercise إلى ConcurrentModificationException (4e37773)
  • وثائق محسنة

الإصدار 1.0.0-rc01

26 تموز (يوليو) 2023

تم طرح "androidx.health:health-services-client:1.0.0-rc01". يحتوي الإصدار 1.0.0-rc01 على هذه الالتزامات.

الميزات الجديدة

  • تم نقل الخدمات الصحية إلى الإصدار 1.0.0-rc01 بعد تثبيت الإصدار التجريبي.

تغييرات واجهة برمجة التطبيقات

  • تم دمج ملفات واجهة برمجة التطبيقات العامة والتجريبية للمسارات h- إلى m. (Ic4630، b/278769092)
  • لا ينطبق، تغييرات ملف واجهة برمجة التطبيقات هي مجرد طرق إعادة ترتيب. (I5fa95)

الإصدار 1.0.0-beta03

5 نيسان (أبريل) 2023

تم طرح "androidx.health:health-services-client:1.0.0-beta03". يتضمّن الإصدار 1.0.0-beta03 هذه الالتزامات.

الميزات الجديدة

يمكن ضبط ميزة "BatchingMode" الآن لعرض بيانات مجمّعة للتمرين خلال الفاصل الزمني الذي تم ضبطه، وذلك بدلاً من البيانات التلقائية أثناء ممارسة تمرين رياضي، سواء عند بدء التمرين من خلال ExerciseConfig أو أثناء استخدام طريقة الإلغاء. سيتم توفير الدعم لهذا الغرض من خلال إصدار قادم عن "الخدمات الصحية" في "متجر Google Play"، ويمكنك التحقّق من ذلك من خلال إمكانيات التمارين الرياضية. ملاحظة: يتم تفعيل أوضاع التجميع عندما يكون الجهاز في حالة طاقة غير تفاعلية، ما يؤدي إلى زيادة استهلاك الطاقة.

تغييرات واجهة برمجة التطبيقات

  • عرض HealthServicesException عندما يتعذّر تعليق دالة overrideBatchingModesForActiveExercise (Ifd387)
  • تم إدخال دوال تعليق لواجهة برمجة تطبيقات overrideBatchingModesForActiveExercise غير متزامنة، ما يجعلها أكثر توافقًا مع لغة kotlin (I7dd15).
  • BatchingMode تلغي السياسة الاختيارية في ExerciseConfig (Id22e9)

إصلاح الأخطاء

  • DataType وExerciseUpdate إصلاح بسيط (5e185f)

الإصدار 1.0.0-beta02

11 كانون الثاني (يناير) 2023

تم طرح "androidx.health:health-services-client:1.0.0-beta02". يتضمّن الإصدار 1.0.0-beta02 هذه الالتزامات.

الميزات الجديدة

  • تمت إضافة دوال الإضافة suspend لواجهات برمجة التطبيقات ListenableFuture غير المتزامنة الحالية في ExerciseClient وPassiveMonitoringClient وMeasureClient للحصول على دعم أفضل بلغة Kotlin. (Iadea4)
  • تمت إضافة واجهة برمجة التطبيقات ExerciseTypeConfig API لتفعيل التحديثات أثناء التدريب المستمر. تمت إضافة GolfExerciseTypeConfig لدعم تحديث ExerciseTypeConfig أثناء تمارين الغولف. (I4c539)

تغييرات واجهة برمجة التطبيقات

  • طرح HealthServicesException عند استخدام دوال التعليق (I5e509)
  • إضافة دالة إنشاء أخرى للتوافق مع الأنظمة القديمة (Iddeda)
  • طرح RuntimeException على دوال التعليق (I53bca)
  • إزالة التنفيذ التلقائي لطرح الاستثناء (Id947f)
  • إضافة تعليق توضيحي @JvmDefaultWithCompatibility (I8f206)

إصلاح الأخطاء

  • الإضافة إلى kdoc لمزيد من الوضوح (Ide285)
  • السماح بالتتبُّع السلبي للأهداف فقط في حال تتبُّع أنواع البيانات نفسها أيضًا (Ibed8d)

الإصدار 1.0.0-beta01

24 تشرين الأول (أكتوبر) 2022

تم طرح "androidx.health:health-services-client:1.0.0-beta01". يتضمّن الإصدار 1.0.0-beta01 هذه الالتزامات.

الميزات الجديدة

  • تمت إضافة إمكانية الاستماع إلى الأحداث الصحية حتى PassiveMonitoringClient، مع أنّ الحدث الأول سيكون: HealthEvent.FALL_DETECTED.

  • أنواع التمارين الجديدة:

    • ALPINE_SKIING
    • BACKPACKING
    • CROSS_COUNTRY_SKIING
    • HORSE_RIDING
    • INLINE_SKATING
    • MOUNTAIN_BIKING
    • ORIENTEERING
    • ROLLER_SKATING
    • YACHTING
  • أنواع البيانات الجديدة:

    • ELEVATION_LOSS
    • GOLF_SHOT_COUNT

تغييرات واجهة برمجة التطبيقات

  • تم تعديل كيفية نمذجة البيانات: تم تعديل نموذج البيانات وكيفية تمثيل DataType وDataPoint وقيمها الأساسية. يتمثّل تأثير المستوى الأعلى في أنّ واجهات برمجة التطبيقات أصبحت الآن أكثر وضوحًا وأمانًا.
  • لم تعُد المواقع الجغرافية DataPoint يتم تمثيلها كعنصر DoubleArray، بل ككائن LocationData شديد الكتابة.
  • تم النقل إلى مجموعة جديدة من واجهات برمجة تطبيقات المستمع السلبي:
    • تم استبدال البث بـ "PassiveListenerService".
    • تم استبدال أدوات الاستماع الحالية بمستمع واحد: PassiveListenerCallback.
  • تمت إضافة علامة <queries> إلى بيان الخدمات الصحية كي لا تحتاج التطبيقات إلى تحديد ذلك في البيان الخاص بها (شرط أن تكون ميزة دمج البيان مفعَّلة في نظام الإصدار الخاص بها).
  • تم إنهاء أو إنهاء التمرين بعيدًا عن العديد من "ExerciseState" لتمثيل التمرين.ENDING وENDED. ويتم الآن دمجها مع ExerciseEndReason لتمثيل السلسلة الكاملة للولايات السابقة.
  • تمت إعادة تسمية PassiveListenerConfig setPassiveGoals إلى setDailyGoals للدلالة بشكل أفضل على أننا نتيح فقط الأهداف السلبية اليومية.
  • PassiveGoal الآن REPEATED دائمًا، تمت إزالة TriggerFrequency السلبي.
  • تمت إضافة تعليقات توضيحية إلى جميع معلَمات Long وDouble باستخدام @FloatRange.
  • تمت إضافة السمة swimmingPoolLengthMeters إلى ExerciseConfig والتي يمكن تحديدها اختياريًا لتحسين حسابات المسافة لسباق السباحة.
  • ExerciseUpdate.activeDuration متوقّف نهائيًا. يمكنك استخدام ExerciseUpdate.activeDurationCheckpoint كبديل.
  • تمت إعادة تسمية واجهة برمجة التطبيقات flushExerciseAsync() إلى flushAsync() في ExerciseClient.
  • تمت إعادة تسمية "Measure.registerCallback" إلى "Measure.registerMeasureCallback".
  • تغييرات عامة على التسمية:
    • تحتوي خصائص المسافة الآن على لاحقة meters.
    • انتهت أسماء طرق معاودة الاتصال الآن.
    • تمت إزالة معظم الاختصارات (أصبح HrAccuracy الآن HeartRateAccuracy).
    • أصبحت الخصائص التي تتبع النمط enableFoo تُسمّى الآن isFooEnabled.
  • تم نقلها بعيدًا عن التعدادات.
  • يتم الآن تمثيل الأوقات الممثّلة في Double بـ Duration.
  • إنّ الدوال التي تعرض ListenableFuture<Void?> تعرض الآن ListenableFuture<Void>.
  • دائمًا ما تظهر الدوال التي تقبل معاودة الاتصال دائمًا كمعلمة أخيرة.
  • تحتوي الفئات التي بها منصات الآن دائمًا على شركات إنشاء عامة أيضًا.
  • لم تعُد وظائف التسجيل تعرض رمز ListenableFuture، بل يمكنها بدلاً من ذلك ضبط حالة التسجيل على صفحة معاودة الاتصال المقدَّمة.
  • تم تحسين "مستندات Google" الآن.
  • لم تعُد الصفوف المتاحة للجميع تُمدّ ProtoParcelable.

إصلاح الأخطاء

  • تحسينات عامة على موثوقية IPC (I3b1e2)

الإصدار 1.0.0-alpha03

3 تشرين الثاني (نوفمبر) 2021

تم طرح "androidx.health:health-services-client:1.0.0-alpha03". يحتوي الإصدار 1.0.0-alpha03 على هذه الالتزامات.

الميزات الجديدة

  • ستعيد حزمة SDK تلقائيًا تسجيل طلبات التسجيل الخاصة بإجراءات القياس والاستماع إلى التمارين ورصد معاودة الاتصال والرصد السلبي في حال انقطاع اتصال IPC بحزمة APK للخدمات الصحية.

تغييرات واجهة برمجة التطبيقات

  • بلغ الإصدار minSdkVersion من مكتبة حزمة تطوير البرامج (SDK) إلى المستوى 30 من واجهة برمجة التطبيقات لأنّ برنامج "عميل الخدمات الصحية" غير متوافق حاليًا إلا على نظام التشغيل Wear3.

الإصدار 1.0.0-alpha02

29 أيلول (سبتمبر) 2021

تم طرح "androidx.health:health-services-client:1.0.0-alpha02". يحتوي الإصدار 1.0.0-alpha02 على هذه الالتزامات.

تغييرات واجهة برمجة التطبيقات

  • بإمكان "ExerciseClient" الآن إعداد التمارين. ويتيح هذا للعملاء تحمُّل أجهزة الاستشعار وانتظار أمور مثل إصلاح نظام تحديد المواقع العالمي (GPS) قبل بدء التمرين.
  • تقدِّم فئتَي AggregateDataPoints وStatulativeDataPoints AggregateDataPoint، بهدف وضع نموذج أفضل للمقاييس المجمّعة التي يتم تتبُّعها أثناء ممارسة تمرين نشط. تحتفظ نقاط البيانات التراكمية بقيم تراكمية لأنواع بيانات الفترات المجمّعة (مثل إجمالي المسافة أثناء التمرين)، بينما يجمّع نموذج StatisticalDataPoints نقاط البيانات المستندة إلى عيّنات (مثل الحدّ الأدنى والحد الأقصى ومتوسط معدّل نبضات القلب في الدقيقة). يحل هذا محل أنواع البيانات AGGREGATE_* السابقة ويمكن الوصول إليه في ExerciseUpdate من خلال getLatestAggregateMetrics(). AGGREGATE_* لم تعد أنواع البيانات متوافقة.
  • PassiveMonitoring تمت إعادة تسمية الأحداث إلى PassiveGoals التي تتيح تحديد الأهداف وتلقّي الإشعارات عند تحقيق هذه الأهداف لأنواع بيانات مثل المقاييس اليومية (أي DAILY_STEPS).
  • نمذجة محسَّنة لمعدل ضربات القلب ودقة الموقع الجغرافي ومدى التوفر من خلال طرح الفئات الجديدة "دقة" و"دقة الموقع الجغرافي" و"مدى توفر الموقع الجغرافي".
  • تحسين تسمية ExerciseConfig وحقول PassiveMonitoringConfig جديدة وتقديم السمة ExerciseConfig.shouldEnableGps لطلب البيانات المستندة إلى نظام تحديد المواقع العالمي (GPS)

إصلاح الأخطاء

  • نقل البيانات إلى نقل IPC المستند إلى نموذج أوّلي من أجل دعم أفضل للتوافق مع الأنظمة القديمة

الإصدار 1.0.0-alpha01

18 أيار (مايو) 2021

تم طرح "androidx.health:health-services-client:1.0.0-alpha01". يحتوي الإصدار 1.0.0-alpha01 على هذه الالتزامات.

ميزات الإصدار الأولي

توفّر مكتبة الخدمات الصحية مجموعة موحّدة من واجهات برمجة التطبيقات للمطوّرين كي تتكامل مع عمليات تنفيذ أدوات الاستشعار الخاصة بالأجهزة. ويعمل هذا الإصدار تلقائيًا مع محاكيات نظام التشغيل Wear OS 3 والأجهزة القادمة، وسيتوفّر على أنظمة أساسية إضافية متاحة في المستقبل. يتضمّن هذا الإصدار الأولي ثلاثة مساحات عرض عالية المستوى لواجهة برمجة التطبيقات: ExerciseClient وPassiveMonitoringClient وMeasureClient.

ExerciseClient

تم تصميم "ExerciseClient" للتطبيقات التي تتتبّع التمارين النشطة، والتي تشمل ما يصل إلى 82 نوعًا مختلفًا من ExerciseType، بدءًا من المشي والركض ووصولاً إلى الرقص وكرة الماء. أثناء تتبُّع هذه التمارين، تتوفّر مجموعة من 50 تمرين DataType مختلف حسب نوع التمرين والأجهزة المتاحة على الجهاز. للبدء، ما عليك سوى تحديد المعلومات ذات الصلة في "ExerciseConfig" والاتصال بـ "exerciseClient.startExercise" ومعرفة مستوى التقدُّم في أداة معالجة التحديث.

PassiveMonitoringClient

يُعد "PassiveMonitoringClient" خيارًا رائعًا إذا كان تطبيقك يتتبّع نشاط المستخدم على مدار اليوم. يمكنك تسجيل PendingIntent مع مجموعة من DataType وسيتم تنشيطها للتعامل مع التغييرات المجمّعة. بدلاً من ذلك، يمكنك تحديد Event مثل الوصول إلى عدد معيّن من الخطوات.

MeasurementClient

يحتاج المستخدم أحيانًا إلى قياس معدل ضربات قلبه على سبيل المثال، في الوقت الحالي، وليس أثناء التمرين وليس على مدار اليوم. في تلك اللحظات، يكون MeasureClient هو الخيار الأمثل.ما عليك سوى تسجيل معاودة الاتصال باستخدام أجهزة DataType المتوافقة لتلقّي تدفق من البيانات، وإلغاء تسجيل معاودة الاتصال عند عدم الحاجة إليها.