طلب أذونات تحديد الموقع الجغرافي

لحماية خصوصية المستخدم، يجب أن تطلب التطبيقات التي تستخدم خدمات الموقع الجغرافي أذونات تحديد الموقع الجغرافي.

عندما تطلب أذونات تحديد الموقع الجغرافي، اتّبِع أفضل الممارسات نفسها التي تتّبعها مع أي إذن تشغيل آخر. هناك اختلاف واحد مهم عندما يتعلق الأمر بأذونات تحديد الموقع الجغرافي هو أنّ النظام يتضمّن أذونات متعدّدة مرتبطة بالموقع الجغرافي. تعتمد الأذونات التي تطلبها وكيف تطلبها على متطلبات الموقع الجغرافي لحالة استخدام تطبيقك.

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

أنواع الوصول إلى الموقع الجغرافي

يتضمن كل إذن مجموعة من الخصائص التالية:

الموقع الجغرافي الذي تعمل في المقدمة

إذا كان تطبيقك يتضمّن ميزة تشارك معلومات الموقع الجغرافي أو تتلقّاها هذه المعلومات فقط مرة واحدة أو لفترة زمنية محدَّدة، ستتطلّب هذه الميزة إذن الوصول إلى الموقع الجغرافي في المقدِّمة. في ما يلي بعض الأمثلة:

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

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

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

    بالإضافة إلى ذلك، ننصحك بتوضيح نوع الخدمة التي تعمل في المقدّمة للسمة location، كما هو موضّح في مقتطف الرمز التالي. في نظام التشغيل Android 10 (مستوى واجهة برمجة التطبيقات 29) والإصدارات الأحدث، عليك تحديد نوع الخدمة التي تعمل في المقدّمة.

    <!-- Recommended for Android 9 (API level 28) and lower. -->
    <!-- Required for Android 10 (API level 29) and higher. -->
    <service
        android:name="MyNavigationService"
        android:foregroundServiceType="location" ... >
        <!-- Any inner elements would go here. -->
    </service>
    

أنت تشير إلى الحاجة إلى استخدام الموقع الجغرافي في المقدّمة عندما يطلب تطبيقك الحصول على إذن ACCESS_COARSE_LOCATION أو إذن ACCESS_FINE_LOCATION، كما هو موضّح في المقتطف التالي:

<manifest ... >
  <!-- Always include this permission -->
  <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />

  <!-- Include only if your app benefits from precise location access. -->
  <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
</manifest>

رصد الموقع الجغرافي في الخلفية

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

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

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

في نظام التشغيل Android 10 (المستوى 29 من واجهة برمجة التطبيقات) والإصدارات الأحدث، عليك تعريف إذن ACCESS_BACKGROUND_LOCATION في ملف بيان التطبيق بطلب الوصول إلى الموقع الجغرافي في الخلفية في وقت التشغيل. في الإصدارات السابقة من نظام التشغيل Android، عندما يحصل تطبيقك على إذن الوصول إلى الموقع الجغرافي في المقدِّمة، سيحصل تلقائيًا على إذن الوصول إلى الموقع الجغرافي في الخلفية أيضًا.

<manifest ... >
  <!-- Required only when requesting background location access on
       Android 10 (API level 29) and higher. -->
  <uses-permission android:name="android.permission.ACCESS_BACKGROUND_LOCATION" />
</manifest>

الدقة

يتيح Android مستويات دقة الموقع الجغرافي التالية:

تقريبي
تقدِّم تقديرًا للموقع الجغرافي للجهاز. إذا كان تقدير الموقع الجغرافي هذا مصدره LocationManagerService أو FusedLocationProvider، يكون هذا التقدير دقيقًا في نطاق 3 كيلومتر مربّع تقريبًا (حوالي 1.2 ميل مربّع). يمكن لتطبيقك الحصول على مواقع جغرافية بهذا المستوى من الدقة من خلال تقديم بيان عن إذن ACCESS_COARSE_LOCATION وليس إذن ACCESS_FINE_LOCATION.
دقيق
تقدِّم تقديرًا للموقع الجغرافي للجهاز يكون دقيقًا قدر الإمكان. إذا كان تقدير الموقع الجغرافي في نطاق LocationManagerService أو FusedLocationProvider، تكون هذه المدة المقدّرة عادةً في نطاق 50 مترًا (160 قدم) تقريبًا وأحيانًا تكون دقيقة مثل بضعة أمتار (10 أقدام) أو أفضل. يمكن لتطبيقك الحصول على مواقع جغرافية بهذا المستوى من الدقة عند تقديم بيان عن إذن ACCESS_FINE_LOCATION.

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

من المفترض أن يظل تطبيقك يعمل عندما يمنح المستخدم إذنًا بالوصول إلى الموقع الجغرافي بشكل تقريبي فقط. إذا كانت إحدى ميزات تطبيقك تتطلّب الوصول إلى الموقع الجغرافي الدقيق باستخدام إذن ACCESS_FINE_LOCATION، يمكنك أن تطلب من المستخدم السماح لتطبيقك بالوصول إلى الموقع الجغرافي الدقيق.

طلب الوصول إلى الموقع الجغرافي في وقت التشغيل

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

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

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

يمكن للمستخدم منح الموقع الجغرافي التقريبي فقط

في نظام التشغيل Android 12 (المستوى 31 من واجهة برمجة التطبيقات) أو الإصدارات الأحدث، يمكن للمستخدمين أن يطلبوا من تطبيقك استرداد معلومات الموقع الجغرافي التقريبي فقط، حتى عندما يطلب التطبيق الحصول على إذن التشغيل ACCESS_FINE_LOCATION.

للتعامل مع سلوك المستخدم المحتمل هذا، لا تطلب إذن ACCESS_FINE_LOCATION وحده. بدلاً من ذلك، يجب طلب كلّ من إذن ACCESS_FINE_LOCATION وإذن ACCESS_COARSE_LOCATION في طلب تشغيل واحد. إذا حاولت طلب ACCESS_FINE_LOCATION فقط، سيتجاهل النظام الطلب في بعض إصدارات Android 12. إذا كان تطبيقك يستهدف نظام التشغيل Android 12 أو الإصدارات الأحدث، سيسجِّل النظام رسالة الخطأ التالية في Logcat:

ACCESS_FINE_LOCATION must be requested with ACCESS_COARSE_LOCATION.

عندما يطلب تطبيقك كلاً من ACCESS_FINE_LOCATION وACCESS_COARSE_LOCATION، سيتضمّن مربّع حوار أذونات النظام الخيارات التالية للمستخدم:

  • دقيق: يسمح هذا الإذن للتطبيق بالحصول على معلومات عن الموقع الجغرافي الدقيق.
  • تقريبي: يسمح للتطبيق بالحصول على معلومات الموقع الجغرافي التقريبي فقط.

يوضّح الشكل 3 أنّ مربّع الحوار يحتوي على إشارة مرئية لكلا الخيارين، لمساعدة المستخدم في الاختيار. بعد أن يقرر المستخدم دقة الموقع، ينقر على أحد الأزرار الثلاثة لتحديد مدة منح الإذن.

في نظام التشغيل Android 12 والإصدارات الأحدث، يمكن للمستخدمين الانتقال إلى إعدادات النظام لضبط دقة الموقع الجغرافي المفضّلة لأي تطبيق، بغض النظر عن إصدار حزمة تطوير البرامج (SDK) المستهدف لهذا التطبيق. وينطبق ذلك حتى إذا كان تطبيقك مثبّتًا على جهاز يعمل بنظام التشغيل Android 11 أو الإصدارات الأقدم، ثم يعمد المستخدم إلى ترقية الجهاز إلى الإصدار Android 12 أو الإصدارات الأحدث.

يشير مربّع الحوار إلى الموقع التقريبي فقط ويتضمّن 3 أزرار، أحدها فوق الآخر
الشكل 2. مربّع حوار أذونات النظام الذي يظهر عندما يطلب تطبيقك ACCESS_COARSE_LOCATION فقط.
يحتوي مربّع الحوار على مجموعتَين من الخيارات، إحداهما فوق الأخرى
الشكل 3. مربّع حوار أذونات النظام يظهر عندما يطلب تطبيقك كلاً من ACCESS_FINE_LOCATION وACCESS_COARSE_LOCATION في طلب وقت تشغيل واحد.

يؤثر اختيار المستخدم في منح الأذونات

يعرض الجدول التالي الأذونات التي يمنحها النظام لتطبيقك، استنادًا إلى الخيارات التي يختارها المستخدم في مربع حوار الأذونات في وقت التشغيل:

دقيق تقريبي
أثناء استخدام التطبيق ACCESS_FINE_LOCATION و
ACCESS_COARSE_LOCATION
ACCESS_COARSE_LOCATION
هذه المرّة فقط ACCESS_FINE_LOCATION و
ACCESS_COARSE_LOCATION
ACCESS_COARSE_LOCATION
رفض ما مِن أذونات لتحديد الموقع الجغرافي ما مِن أذونات لتحديد الموقع الجغرافي

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

Kotlin

val locationPermissionRequest = registerForActivityResult(
        ActivityResultContracts.RequestMultiplePermissions()
    ) { permissions ->
        when {
            permissions.getOrDefault(Manifest.permission.ACCESS_FINE_LOCATION, false) -> {
                // Precise location access granted.
            }
            permissions.getOrDefault(Manifest.permission.ACCESS_COARSE_LOCATION, false) -> {
                // Only approximate location access granted.
            } else -> {
                // No location access granted.
            }
        }
    }

// ...

// Before you perform the actual permission request, check whether your app
// already has the permissions, and whether your app needs to show a permission
// rationale dialog. For more details, see Request permissions.
locationPermissionRequest.launch(arrayOf(
    Manifest.permission.ACCESS_FINE_LOCATION,
    Manifest.permission.ACCESS_COARSE_LOCATION))

Java

ActivityResultLauncher<String[]> locationPermissionRequest =
    registerForActivityResult(new ActivityResultContracts
        .RequestMultiplePermissions(), result -> {
            Boolean fineLocationGranted = result.getOrDefault(
                    Manifest.permission.ACCESS_FINE_LOCATION, false);
            Boolean coarseLocationGranted = result.getOrDefault(
                    Manifest.permission.ACCESS_COARSE_LOCATION,false);
            if (fineLocationGranted != null && fineLocationGranted) {
                // Precise location access granted.
            } else if (coarseLocationGranted != null && coarseLocationGranted) {
                // Only approximate location access granted.
            } else {
                // No location access granted.
            }
        }
    );

// ...

// Before you perform the actual permission request, check whether your app
// already has the permissions, and whether your app needs to show a permission
// rationale dialog. For more details, see Request permissions.
locationPermissionRequest.launch(new String[] {
    Manifest.permission.ACCESS_FINE_LOCATION,
    Manifest.permission.ACCESS_COARSE_LOCATION
});

طلب ترقية الموقع الجغرافي الدقيق

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

لكي تطلب من المستخدم ترقية إذن وصول تطبيقك إلى الموقع الجغرافي من تقريبي إلى دقيق، يُرجى اتّباع الخطوات التالية:

  1. إذا لزم الأمر، يمكنك شرح سبب احتياج تطبيقك إلى الإذن.
  2. اطلب إذنَي "ACCESS_FINE_LOCATION" و"ACCESS_COARSE_LOCATION" معًا من جديد. نظرًا لأن المستخدم قد سمح من قبل للنظام بمنح الموقع التقريبي لتطبيقك، فإن مربع حوار النظام مختلف هذه المرة، كما هو موضح في الشكل 4 والشكل 5:
يحتوي مربّع الحوار على الخيارات &quot;التغيير إلى الموقع الجغرافي الدقيق&quot; و&quot;هذه المرة فقط&quot; و&quot;رفض&quot;.
الشكل 4. اختار المستخدم سابقًا تقريبي وأثناء استخدام التطبيق (في مربع الحوار من الشكل 3).
يتضمّن مربّع الحوار الخيارَين &quot;هذه المرة فقط&quot; و&quot;رفض&quot;.
الشكل 5. اختار المستخدم في السابق تقريبي وهذه المرّة فقط (في مربّع الحوار من الشكل 3).

طلب الموقع الجغرافي في المقدِّمة فقط

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

يوضح الشكل 6 مثالاً لتطبيق مصمم للتعامل مع الطلبات المتزايدة. تتطلب ميزتا "عرض الموقع الحالي" و "اقتراح الأماكن المجاورة" الوصول إلى الموقع الجغرافي في المقدِّمة. ومع ذلك، فإن ميزة "اقتراح الأماكن المجاورة" فقط تتطلب إمكانية الوصول إلى الموقع الجغرافي في الخلفية.

يتم وضع الزر الذي يتيح الوصول إلى الموقع الجغرافي في المقدِّمة
 على بُعد نصف الشاشة من الزر الذي يتيح رصد الموقع الجغرافي في الخلفية.
الشكل 6. وتتطلّب الميزتان إمكانية الوصول إلى الموقع الجغرافي، إلا أنّ ميزة "اقتراح الميزات القريبة" هي فقط التي تتطلّب الوصول إلى بيانات الموقع الجغرافي في الخلفية.

في ما يلي خطوات إجراء الطلبات المتزايدة:

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

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

  2. في وقت لاحق، عندما يستكشف المستخدم وظيفة تتطلب الوصول إلى الموقع الجغرافي في الخلفية، يمكنك طلب إذن الوصول إلى الموقع الجغرافي في الخلفية.

طلب رصد الموقع الجغرافي في الخلفية إذا لزم الأمر

الشكل 7. تتضمن صفحة الإعدادات خيارًا باسم السماح طوال الوقت، والذي يمنح إمكانية الوصول إلى الموقع الجغرافي في الخلفية.

يعتمد محتوى مربّع حوار الأذونات على إصدار حزمة تطوير البرامج (SDK) المستهدَف.

عندما تطلب ميزة في تطبيقك رصد الموقع الجغرافي في الخلفية على جهاز يعمل بنظام التشغيل Android 10 (المستوى 29 من واجهة برمجة التطبيقات)، يتضمّن مربّع حوار أذونات النظام خيارًا باسم السماح طوال الوقت. إذا حدّد المستخدم هذا الخيار، فستحصل الميزة في تطبيقك على إمكانية الوصول إلى الموقع الجغرافي في الخلفية.

ومع ذلك، على الرغم من ذلك على نظام التشغيل Android 11 (المستوى 30 لواجهة برمجة التطبيقات) والإصدارات الأحدث، لا يتضمّن مربّع حوار النظام خيار السماح طوال الوقت. بدلاً من ذلك، يجب على المستخدمين تمكين تحديد الموقع في الخلفية في صفحة الإعدادات، كما هو موضح في الشكل 7.

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

يستهدف التطبيق الإصدار 11 من نظام التشغيل Android أو الإصدارات الأحدث.

إذا لم يحصل تطبيقك على إذن ACCESS_BACKGROUND_LOCATION، وأدّى الخطأ shouldShowRequestPermissionRationale() إلى عرض true، يعرض واجهة مستخدم تعليمية للمستخدمين تتضمّن ما يلي:

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

يستهدف التطبيق الإصدار 10 من نظام التشغيل Android أو الإصدارات الأقدم.

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

لن يكون عليك إجراء أي تغييرات لإتاحة هذا السلوك طالما أنّ تطبيقك يتّبع أفضل الممارسات لطلب أذونات تحديد الموقع الجغرافي.

يمكن أن يؤثر المستخدم في دقة تحديد الموقع الجغرافي في الخلفية.

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

تذكير بمنح إذن رصد الموقع الجغرافي في الخلفية

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

التحقّق من متطلبات الموقع الجغرافي في العناصر الاعتمادية لحزمة تطوير البرامج (SDK) الخاصة بتطبيقك

تحقَّق مما إذا كان تطبيقك يستخدم أي حِزم تطوير برامج (SDK) تعتمد على أذونات تحديد الموقع الجغرافي، خاصةً إذن ACCESS_FINE_LOCATION. راجِع هذه المقالة على Medium حول التعرّف على سلوكيات تبعيات حزمة SDK.

مراجع إضافية

لمزيد من المعلومات حول أذونات تحديد الموقع الجغرافي في Android، يُرجى الاطّلاع على المواد التالية:

الدروس التطبيقية حول الترميز

الفيديوهات الطويلة

العيّنات

  • نموذج تطبيق لتوضيح استخدام أذونات تحديد الموقع الجغرافي