تهدف أذونات Android إلى حماية خصوصية مستخدم Android. وتطلب من المستخدم عندما تريد التطبيقات الوصول إلى أنواع بيانات البيانات الحساسة مثل جهات الاتصال أو الصور وميزات النظام مثل الموقع أو اكتشاف الخطوات. يمنح المستخدمون هذه الأذونات عند تنزيل التطبيق لأول مرة.
إذا كان تطبيقك يحتاج إلى الوصول إلى أي من أنواع البيانات هذه (مجموعة فرعية من أنواع بيانات Google Fit)، عليك طلب إذن Android ذي الصلة قبل طلب أذونات OAuth. انظر أدناه.
![مثال على شاشة طلب الموافقة على أذونات Android](https://developers.google.cn/static/fit/images/android_permissions.png?authuser=7&hl=ar)
أنواع البيانات التي تحتاج إلى أذونات من 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، عليك
تنفيذ المنطق للتعامل مع طلب أذونات 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"/>