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

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

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

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

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

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

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

مصادر إضافية

لمزيد من المعلومات حول مستوى ظهور الحزمة على Android، يمكنك الاطّلاع على المواد التالية:

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