Paket görünürlüğü davranışını test et

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ğiyle ilgili bazı öneriler de ve günlük mesajlarını daha ayrıntılı iki düzeyin de ele alınması gerekir.

Davranış değişikliklerini test etme

Bu davranış değişikliğinin uygulamanızı etkileyip etkilemediğini test etmek için aşağıdaki adımları tamamlayın:

  1. Android Studio 3.6.1 veya sonraki bir sürümü yükleyin.
  2. Android Studio'nun desteklediği en son Gradle sürümünü yükleyin.
  3. Uygulamanızın targetSdkVersion değerini 30 veya daha yüksek bir değere ayarlayın.
  4. <queries> öğesini uygulamanızın manifest dosyasına eklemeyin.
  5. Telefonla arama getInstalledApplications() veya getInstalledPackages(). Her iki yöntem de başarılı olduğunda filtrelenmiş bir liste döndürür.
  6. Uygulamanızın hangi özelliklerinin çalışmadığını görün.
  7. Uygun bir <queries> ekleyin. giriş yapabilirsiniz.

Paket filtreleme için günlük mesajlarını yapılandırma

Uygulamaların varsayılan görünürlüğünün uygulamasında paket filtreleme için günlük mesajlarını etkinleştirebilirsiniz. Android Studio'da test uygulaması veya hata ayıklama yapılabilir uygulama geliştiriyorsanız sistem günlüğü bu özelliği size sağlar. Aksi takdirde, aşağıdaki komutu kullanarak manuel olarak etkinleştirin:

adb shell pm log-visibility --enable PACKAGE_NAME

Ardından, paketler bir PackageManager nesnesinin dönüşünden 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