Понимание фильтров видимости пакетов для системных пакетов и намерений

#android

Вопрос:

Я нахожусь в процессе обновления приложения до Android 11.

В Android 11 появилась фильтрация видимости пакетов. В статье говорится, что некоторые пакеты автоматически отображаются для всех приложений.

Некоторые системные пакеты, такие как поставщик мультимедиа, реализующие основные функции Android.

Мое приложение использует следующие намерения-действия:

 MediaStore.ACTION_IMAGE_CAPTURE
Intent.ACTION_GET_CONTENT
Intent.ACTION_PICK
Intent.ACTION_SEND
Intent.ACTION_SENDTO
 

Если я не добавлю вышеуказанные намерения queries , для них не будут открыты несистемные приложения, верно?

Есть еще одно изменение в действиях с намерением СМИ, которое меня смущает.

Начиная с Android 11, только предустановленные системные приложения для камер могут реагировать на следующие действия

Например, на телефонах Samsung есть это приложение для галереи с именем пакета com.sec.android.gallery3d . Аналогичным образом, у других производителей также могут быть разные приложения для камеры. Означает ли это, что мне не нужно добавлять queries объявление, так как это пользовательское приложение для камеры/галереи будет считаться системным приложением?

Я протестировал эти случаи на эмуляторе Android 11. У меня нет приложения галереи Samsung в качестве системного приложения в эмуляторе. Так что я не уверен, как это получится.

queries.xml

 <queries>

    <!-- Finds Snapchat App -->
    <package android:name="com.snapchat.android" />

    <!-- Finds all apps that can receive photos -->
    <intent>
        <action android:name="android.intent.action.VIEW" />
        <data android:mimeType="image/*" />
    </intent>

    <!-- Finds all apps that can receive videos -->
    <intent>
        <action android:name="android.intent.action.VIEW" />
        <data android:mimeType="video/*" />
    </intent>
</queries>