Uygulamanız, kullanım alanlarını tamamlamak için diğer uygulamalarla olan etkileşimlere ihtiyaç duyuyorsa paket görünürlüğünün Android 11 (API düzeyi 30) ve sonraki sürümlerdeki değişiklikler uygulamanızı etkiler.
Bu kılavuzda, davranış değişikliklerinin nasıl test edileceğine dair bazı öneriler de sunulmaktadır. Ayrıca, uygulamanızın nasıl etkilenebileceğini daha ayrıntılı bir düzeyde belirlemek için günlük mesajlarını yapılandırmanıza yardımcı olur.
Davranış değişikliklerini test etme
Bu davranış değişikliğinin uygulamanızı etkileyip etkilemediğini test etmek için şu adımları uygulayın:
- Android Studio 3.6.1 veya sonraki bir sürümü yükleyin.
- Android Studio'nun desteklediği Gradle'in en son sürümünü yükleyin.
- Uygulamanızın
targetSdkVersion
sürümünü30
veya sonraki bir sürüme güncelleyin. - Uygulamanızın manifest dosyasına
<queries>
öğesini eklemeyin. getInstalledApplications()
veyagetInstalledPackages()
numaralı telefondan bizi arayın. Her iki yöntem de başarılı olduğunda filtrelenmiş bir liste döndürür.- Uygulamanızın hangi özelliklerinin çalışmadığını görün.
- Bu özellikleri düzeltmek için uygun
<queries>
girişleri ekleyin.
Paket filtreleme için günlük mesajlarını yapılandırma
Uygulamaların varsayılan görünürlüğünün uygulamanızı nasıl etkilediği hakkında daha fazla bilgi edinmek için paket filtreleme için günlük mesajlarını etkinleştirebilirsiniz. Özel bir durum veya hata ayıklaması yapılabilir bir uygulamayla karşılaşırsanız sistem günlüğü olanağı sunar. Aksi takdirde aşağıdaki komutu kullanarak manuel olarak etkinleştirin:
adb shell pm log-visibility --enable PACKAGE_NAME
Ardından, bir PackageManager
nesnesinin döndürdüğü değerlerden paketler filtrelendiğinde Logcat'te aşağıdakine benzer bir mesaj görürsünüz:
I/AppsFilter: interaction: PackageSetting{7654321 \ com.example.myapp/12345} -> PackageSetting{...} BLOCKED