Если ваше приложение зависит от взаимодействия с другими приложениями для выполнения своих задач, полезно протестировать, как изменения видимости пакетов в Android 11 (уровень API 30) и выше влияют на ваше приложение.
В этом руководстве также даются некоторые рекомендации по тестированию изменений поведения и помощь в настройке сообщений журнала для более детального определения того, как это может повлиять на ваше приложение.
Проверьте изменения в поведении
Чтобы проверить, повлияет ли это изменение поведения на ваше приложение, выполните следующие действия:
- Установите Android Studio 3.6.1 или выше.
 - Установите последнюю версию Gradle, поддерживаемую Android Studio.
 -  Установите 
targetSdkVersionвашего приложения на30или выше. -  Не включайте элемент 
<queries>в файл манифеста вашего приложения. -  Вызовите 
getInstalledApplications()илиgetInstalledPackages(). Оба метода возвращают отфильтрованный список при успешном выполнении. - Посмотрите, какие функции вашего приложения не работают.
 -  Введите соответствующие записи 
<queries>для исправления этих особенностей. 
Настройте сообщения журнала для фильтрации пакетов
Чтобы узнать больше о том, как видимость приложений по умолчанию влияет на ваше приложение, вы можете включить запись сообщений журнала для фильтрации пакетов. Если вы разрабатываете тестовое или отлаживаемое приложение в Android Studio, системный журнал предоставляет такую возможность . В противном случае вы можете выполнить следующую команду в окне терминала, чтобы включить фильтрацию вручную:
adb shell pm log-visibility --enable PACKAGE_NAME
 Затем, всякий раз, когда пакеты отфильтровываются из возвращаемых значений объекта PackageManager , в Logcat вы увидите сообщение, похожее на следующее:
I/AppsFilter: interaction: PackageSetting{7654321 \
  com.example.myapp/12345} -> PackageSetting{...} BLOCKED