أذونات Android

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

ما إذا كان تطبيقك يحتاج إلى الوصول إلى أي من أنواع البيانات هذه (مجموعة فرعية من أنواع بيانات Google Fit)، اطلب الملف إذن Android قبل طلب أذونات OAuth. انظر أدناه.

مثال على شاشة طلب الموافقة على أذونات Android
الشكل 1.شاشة الموافقة على أذونات Android

أنواع البيانات التي تحتاج إلى أذونات Android

للوصول إلى أنواع بيانات النشاط البدني هذه، عليك طلب إذن Android ACTIVITY_RECOGNITION:

  • لتسجيل أنواع البيانات هذه:

    • com.google.step_count.delta
    • com.google.step_count.cumulative
    • com.google.step_count.cadence
    • com.google.activity.segment
    • com.google.calories.expended
  • من أجل قراءة أنواع البيانات هذه:

    • com.google.step_count.delta
    • com.google.step_count.cumulative
    • com.google.step_count.cadence
    • com.google.activity.segment
    • com.google.activity.exercise

للوصول إلى أنواع البيانات هذه، عليك طلب إذن Android ACCESS_FINE_LOCATION:

  • لقراءة أنواع البيانات هذه:
    • com.google.distance.delta
    • com.google.location.sample
    • com.google.location.bounding_box
    • com.google.speed

لتسجيل أنواع البيانات هذه، عليك طلب إذن Android BODY_SENSORS:

  • com.google.heart_rate.bpm

جارٍ طلب أذونات Android

تعرَّف على المزيد من المعلومات حول طلب أذونات Android، إذن التعرّف على النشاط البدني إذن تحديد الموقع الجغرافي الدقيق وإذن أجهزة استشعار الجسم

للوصول إلى أنواع البيانات المذكورة أعلاه باستخدام واجهات برمجة التطبيقات في Google Fit، ستحتاج إلى تطبيق منطق للتعامل مع طلبات أذونات Android لكل من Android 10 الإصدارات السابقة من Android. تستخدم هذه الأمثلة إذن ACTIVITY_RECOGNITION.

Android 10

ليتمكّن تطبيقك من استهداف المستوى 29 أو أعلى لواجهة برمجة التطبيقات، عليك طلب الإذن من المستخدم وتسجيل الإذن في ملف بيان التطبيق.

  1. أضِف الإذن إلى ملف البيان.

    <uses-permission android:name="android.permission.ACTIVITY_RECOGNITION"/>
    
  2. التأكّد من منح الإذن:

    if (ContextCompat.checkSelfPermission(thisActivity, Manifest.permission.ACTIVITY_RECOGNITION)
              != PackageManager.PERMISSION_GRANTED) {
          // Permission is not granted
    }
    
  3. إذا لم يتم منحك الإذن من قبل، اطلب الإذن:

    ActivityCompat.requestPermissions(thisActivity,
                arrayOf(Manifest.permission.ACTIVITY_RECOGNITION),
                MY_PERMISSIONS_REQUEST_ACTIVITY_RECOGNITION)
    

Android 9 والإصدارات الأقدم

وبالتالي، يمكن لتطبيقك استهداف المستوى 28 أو أقل لواجهة برمجة التطبيقات:

  1. اطلب إذن com.google.android.gms.permission.ACTIVITY_RECOGNITION.

  2. أضِف الإذن إلى ملف البيان.

    <uses-permission android:name="android.gms.permission.ACTIVITY_RECOGNITION"/>