إذا كان تطبيقك يعتمد على التفاعلات مع تطبيقات أخرى لإكمال حالات الاستخدام، من المفيد اختبار مدى تأثُّر تطبيقك بتغييرات مستوى ظهور الحِزمة في الإصدار 11 من نظام التشغيل Android (المستوى 30 لواجهة برمجة التطبيقات) والإصدارات الأحدث.
يقدّم هذا الدليل أيضًا بعض الاقتراحات حول كيفية اختبار تغييرات السلوك ويساعدك في ضبط رسائل السجلّ لتحديد كيفية تأثُّر تطبيقك بشكل أدق.
اختبار التغييرات في السلوك
لاختبار ما إذا كان هذا التغيير في السلوك يؤثر في تطبيقك، أكمِل الخطوات التالية:
- ثبِّت Android Studio 3.6.1 أو إصدار أحدث.
- ثبِّت أحدث إصدار من Gradle متوافق مع Android Studio.
- اضبط
targetSdkVersion
في تطبيقك على30
أو إصدار أحدث. - لا تُدرِج العنصر
<queries>
في ملف بيان تطبيقك. - يُرجى الاتصال بالرقم
getInstalledApplications()
أوgetInstalledPackages()
. تُرجِع كلتا الطريقتَين قائمة تمت فلترتها عند نجاحهما. - معرفة الميزات التي لا تعمل في تطبيقك
- أدخِل إدخالات
<queries>
مناسبة لإصلاح هذه الميزات.
ضبط رسائل السجلّ لفلترة الحِزم
لمعرفة المزيد من التفاصيل عن كيفية تأثير مستوى العرض التلقائي للتطبيقات في تطبيقك، يمكنك تفعيل رسائل السجلّ لفلترة الحِزم. إذا كنت تطوّر تطبيقًا تجريبيًا أو تطبيقًا يمكن تصحيح الأخطاء فيه في "استوديو Android"، سيوفّر لك سجلّ النظام هذه الإمكانية. بخلاف ذلك، يمكنك تشغيل الأمر التالي في نافذة طرفية لتمكينه يدويًا:
adb shell pm log-visibility --enable PACKAGE_NAME
بعد ذلك، عند فلترة الحِزم خارج القيم المعروضة لكائن PackageManager
، ستظهر لك رسالة مشابهة لما يلي في Logcat:
I/AppsFilter: interaction: PackageSetting{7654321 \ com.example.myapp/12345} -> PackageSetting{...} BLOCKED