System automatycznie udostępnia niektóre aplikacje, aby Twoja aplikacja mogła z nimi wchodzić w interakcje bez konieczności deklarowania elementu <queries>
. Takie działanie
pomaga w obsłudze podstawowych funkcji i częstych przypadków użycia.
Rodzaje aplikacji, które są widoczne automatycznie
Te typy aplikacji są zawsze widoczne dla Twojej aplikacji, nawet jeśli jest ona kierowana na Androida 11 (API na poziomie 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 aktywność w Twojej aplikacji za pomocą metody
startActivityForResult()
, zgodnie z opisem w przewodniku na temat uzyskiwania wyniku z aktywności. - Każda aplikacja, która uruchamia usługę lub wiąże się z nią w Twojej aplikacji.
- Każda aplikacja, która ma dostęp do dostawcy treści w Twojej aplikacji.
- Każda aplikacja, która ma dostawcę treści, do którego Twoja aplikacja ma przyznane uprawnienia identyfikatora URI.
- Każda aplikacja, która otrzymuje dane wejściowe z Twojej aplikacji. Ten przypadek dotyczy tylko sytuacji, gdy Twoja aplikacja udostępnia dane wejściowe jako edytor metody wprowadzania.
Pakiety systemowe, które są automatycznie widoczne
Niektóre pakiety systemowe, które implementują podstawowe funkcje Androida, są automatycznie widoczne dla 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 na konkretnym urządzeniu, uruchom to polecenie w terminalu na komputerze deweloperskim:
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.