تهدف أذونات Android إلى حماية خصوصية مستخدم Android. كما أنها تخبر المستخدم عندما تريد التطبيقات الوصول إلى أنواع البيانات الحساسة مثل جهات الاتصال أو الصور وميزات النظام مثل الموقع أو اكتشاف الخطوات. يمنح المستخدمون هذه الأذونات عند تنزيل تطبيقك لأول مرة.
إذا كان تطبيقك بحاجة إلى الوصول إلى أي من أنواع البيانات هذه (مجموعة فرعية من أنواع بيانات Google Fit)، يمكنك طلب إذن Android ذي الصلة قبل طلب أذونات OAuth. انظر أدناه.
أنواع البيانات التي تحتاج إلى أذونات Android
للوصول إلى أنواع بيانات النشاط البدني هذه، عليك طلب إذن ACTIVITY_RECOGNITION
من Android:
لتسجيل أنواع البيانات هذه:
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
للوصول إلى أنواع البيانات هذه، عليك طلب إذن ACCESS_FINE_LOCATION
من Android:
- لقراءة أنواع البيانات التالية:
com.google.distance.delta
com.google.location.sample
com.google.location.bounding_box
com.google.speed
لتسجيل أنواع البيانات هذه، ستحتاج إلى طلب إذن BODY_SENSORS
من Android:
com.google.heart_rate.bpm
طلب أذونات Android
تعرّف على مزيد من المعلومات حول طلب أذونات Android وإذن التعرّف على النشاط البدني وإذن تحديد الموقع الجغرافي الدقيق وإذن أجهزة استشعار الجسم.
للوصول إلى أنواع البيانات أعلاه باستخدام واجهات Google Fit API، عليك تنفيذ المنطق للتعامل مع طلب أذونات Android لكل من Android 10 والإصدارات السابقة من Android. تستخدم هذه الأمثلة إذن ACTIVITY_RECOGNITION
.
Android 10
لكي يتمكّن تطبيقك من استهداف المستوى 29 والإصدارات الأحدث من واجهة برمجة التطبيقات، وطلب الإذن من المستخدم، وتسجيل الإذن في ملف بيان التطبيق.
-
<uses-permission android:name="android.permission.ACTIVITY_RECOGNITION"/>
-
if (ContextCompat.checkSelfPermission(thisActivity, Manifest.permission.ACTIVITY_RECOGNITION) != PackageManager.PERMISSION_GRANTED) { // Permission is not granted }
إذا لم يتم منح الإذن من قبل، يمكنك طلب الإذن:
ActivityCompat.requestPermissions(thisActivity, arrayOf(Manifest.permission.ACTIVITY_RECOGNITION), MY_PERMISSIONS_REQUEST_ACTIVITY_RECOGNITION)
الإصدار 9 من نظام Android والإصدارات الأقدم
بحيث يمكن أن يستهدف تطبيقك المستوى 28 من واجهة برمجة التطبيقات أو أقل:
اطلب الإذن
com.google.android.gms.permission.ACTIVITY_RECOGNITION
.-
<uses-permission android:name="android.gms.permission.ACTIVITY_RECOGNITION"/>