El sistema hace que algunas aplicaciones sean visibles automáticamente para la tuya para que pueda interactuar con ellas sin necesidad de declarar el elemento <queries>
. Con este comportamiento, se brinda funcionalidad básica y casos de uso comunes.
Tipos de apps visibles automáticamente
Los siguientes tipos de apps son siempre visibles para la tuya, incluso si tu app se orienta a Android 11 (API nivel 30) o versiones posteriores:
- Tu propia app
- Determinados paquetes del sistema, como el proveedor de contenido multimedia, que implementan la funcionalidad principal de Android
- La app que instaló la tuya
- Cualquier app que inicie una actividad en la tuya con el método
startActivityForResult()
, como se describe en la guía para obtener un resultado de una actividad - Cualquier app que se inicie o se vincule a un servicio de la tuya
- Cualquier app que acceda a un proveedor de contenido en la tuya
- Cualquier app que tenga un proveedor de contenido al que tu aplicación pueda acceder mediante los permisos de URI correspondientes
- Cualquier app que reciba entradas de tu app (este caso se aplica solo cuando tu aplicación proporciona entradas como un editor de método de entrada)
Además, puedes iniciar la actividad de otra app con un intent implícito o explícito, independientemente de si la otra aplicación es visible para la tuya.
Paquetes de sistema visibles automáticamente
Algunos de los paquetes de sistema que implementan funcionalidades principales de Android son visibles automáticamente para tu app, incluso cuando esta se orienta a Android 11 o versiones posteriores. El conjunto específico de paquetes depende del dispositivo que ejecuta tu aplicación.
Para ver la lista completa de paquetes de un dispositivo específico, ejecuta el siguiente comando en una terminal de tu máquina de desarrollo:
adb shell dumpsys package queries
En el resultado del comando, busca la sección forceQueryable
. Allí, se incluye la lista de paquetes que el dispositivo hizo visible automáticamente para tu app.