الإفصاح عن الأذونات المناسبة

تستخدم "خدمات الصحة" على نظام التشغيل Wear OS الأذونات المميزة التالية:

  • READ_HEART_RATE لقراءة معلومات معدل ضربات القلب
  • ACTIVITY_RECOGNITION
  • ACCESS_FINE_LOCATION
  • BODY_SENSORS على Wear OS 5.1 (المستوى 35 لواجهة برمجة التطبيقات) والإصدارات الأقدم
  • BODY_SENSORS_BACKGROUND بين Wear OS 4 (المستوى 33 لواجهة برمجة التطبيقات) و Wear OS 5.1 (المستوى 35 لواجهة برمجة التطبيقات)، بما في ذلك

راجِع الجدول التالي لتحديد الأذونات اللازمة لتطبيقك، استنادًا إلى أنواع بيانات اللياقة البدنية التي تريد عرضها للمستخدمين. احرص على اتّباع المبادئ الأساسية لطلب الأذونات، بما في ذلك طلب الأذونات في السياق.

إذا كان تطبيقك يستهدف المستوى 36 أو أعلى من واجهة برمجة التطبيقات، وإذا كان يستخدم PassiveMonitoringClient للوصول إلى معلومات أجهزة استشعار الجسم في الخلفية، اطلب إذن READ_HEALTH_DATA_IN_BACKGROUND. إذا كان تطبيقك يستهدف مستوى واجهة برمجة تطبيقات يتراوح بين 33 و35، اطلب إذنَي BODY_SENSORS وBODY_SENSORS_BACKGROUND بدلاً من ذلك.

نوع البيانات الإذن
CALORIES
CALORIES_DAILY
DISTANCE_DAILY
DECLINE_DISTANCE
DISTANCE
ELEVATION_GAIN
ELEVATION_LOSS
FLAT_GROUND_DISTANCE
FLOORS
FLOORS_DAILY
GOLF_SHOT_COUNT
INCLINE_DISTANCE
PACE
REP_COUNT
RUNNING_STEPS
SPEED
STEPS
STEPS_DAILY
STEPS_PER_MINUTE
SWIMMING_LAP_COUNT
SWIMMING_STROKES
CALORIES_TOTAL
WALKING_STEPS
UserActivityInfo
UserActivityState
ACTIVITY_RECOGNITION
HEART_RATE_BPM READ_HEART_RATE
ABSOLUTE_ELEVATION
LOCATION
ACCESS_FINE_LOCATION

نقل البيانات لتتوافق مع المستوى 36 من واجهة برمجة التطبيقات

إذا كان تطبيقك يستهدف الإصدار 6 من نظام التشغيل Wear OS (المستوى 36 لواجهة برمجة التطبيقات) أو الإصدارات الأحدث، اتّبِع الخطوات التالية لنقل تطبيقك إلى الإصدارات الأحدث من منصة Wear OS:

  1. في ملف البيان، أضِف maxSdkVersion للإذن القديم، بالإضافة إلى الإذن الحديث READ_HEART_RATE:

    <uses-permission android:name="android.permission.BODY_SENSORS"
                     android:maxSdkVersion="35" />
    <uses-permission android:name="android.permission.health.READ_HEART_RATE" />
    
  2. إذا كان تطبيقك يتطلب الوصول إلى أجهزة استشعار الجسم أثناء تشغيله في الخلفية، أضِف maxSdkVersion للإذن القديم بالوصول إلى البيانات في الخلفية، وأضِف إذن READ_HEALTH_DATA_IN_BACKGROUND الحديث:

    <uses-permission android:name="android.permission.BODY_SENSORS_BACKGROUND"
                     android:maxSdkVersion="35" />
    <uses-permission android:name="android.permission.health.READ_HEALTH_DATA_IN_BACKGROUND" />
    
  3. اطلب إذن قياس معدل ضربات القلب وتأكَّد من منحه في كل مكان يبحث فيه تطبيقك عن إذنَي BODY_SENSOR وBODY_SENSORS_BACKGROUND، مع الفلترة حسب إصدار Wear OS. مثلاً:

    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.BAKLAVA) {
        this.add(HealthPermissions.READ_HEART_RATE)
    }