System automatycznie ujawnia niektóre aplikacje, aby Twoja aplikacja mogła z nimi współpracować bez konieczności deklarowania elementu <queries>
. Takie działanie pomaga obsługiwać podstawowe funkcje i typowe przypadki użycia.
Typy aplikacji, które są widoczne automatycznie
Te typy aplikacji są zawsze widoczne dla Twojej aplikacji, nawet jeśli jest ona kierowana na Androida 11 (poziom API 30) lub nowszego:
- własną aplikację,
- Niektóre pakiety systemowe, takie jak dostawca multimediów, które implementują podstawowe funkcje Androida.
- Aplikacja, która zainstalowała Twoją aplikację.
- Każda aplikacja, która uruchamia w aplikacji aktywność przy użyciu metody
startActivityForResult()
zgodnie z opisem w przewodniku na temat uzyskiwania wyników działania. - każda aplikacja, która uruchamia lub łączy się z usługą w Twojej aplikacji;
- każda aplikacja, która uzyskuje dostęp do dostawcy treści w Twojej aplikacji;
- Każda aplikacja korzystająca z dostawcy treści, do której Twoja aplikacja otrzymała uprawnienia URI.
- Każda aplikacja, która otrzymuje dane wejściowe z Twojej aplikacji. Ten przypadek ma zastosowanie tylko wtedy, gdy aplikacja wprowadza dane wejściowe jako edytor metody wprowadzania.
Pakiety systemowe widoczne automatycznie
Niektóre pakiety systemowe, które implementują podstawowe funkcje Androida, są automatycznie widoczne dla Twojej aplikacji, nawet jeśli jest ona kierowana na Androida 11 lub nowszego. Konkretny zestaw pakietów zależy od urządzenia, na którym działa Twoja aplikacja.
Aby wyświetlić pełną listę pakietów dla konkretnego urządzenia, uruchom to polecenie w terminalu na maszynie do programowania:
adb shell dumpsys package queries
W wyniku polecenia znajdź sekcję forceQueryable
. Ta sekcja zawiera listę pakietów, które urządzenie automatycznie udostępniło Twojej aplikacji.