فلترة مستوى ظهور الحِزم على Android

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

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

يؤثّر نطاق ظهور التطبيق المحدود في النتائج التي تعرضها الطرق التي تقدّم معلومات حول التطبيقات الأخرى، مثل queryIntentActivities() وgetPackageInfo() وgetInstalledApplications(). يؤثّر مستوى الظهور المحدود أيضًا في التفاعلات الواضحة مع التطبيقات الأخرى، مثل بدء خدمة تطبيق آخر.

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

في الحالات النادرة التي لا يوفّر فيها العنصر <queries> إمكانية الوصول إلى الحزمة بشكل كافٍ، يمكنك استخدام الإذن QUERY_ALL_PACKAGES. إذا نشرت تطبيقك على Google Play، يخضع استخدام تطبيقك لهذا الإذن للموافقة.

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

مراجع إضافية

لمزيد من المعلومات حول إذن الوصول إلى التطبيقات على Android، يمكنك الاطّلاع على المواد التالية:

مشاركات المدونة