Para proteger aún más la privacidad del usuario, Android 11 incorpora el acceso único a la ubicación y cambia la forma en la que los usuarios otorgan acceso a la ubicación en segundo plano. Estas actualizaciones afectan a todas las apps que se ejecutan en Android 11 y versiones posteriores.
Acceso único
En Android 11 y versiones posteriores, cada vez que tu app solicita acceso a la ubicación en primer plano, el diálogo de permisos del sistema incluye una opción llamada Solo esta vez, como se muestra en la figura 1. Esta opción les brinda a los usuarios un mayor control con respecto a cuándo una app puede acceder a la información de ubicación.
Descubre cómo el sistema controla los permisos únicos.
Acceso a ubicación en segundo plano
En Android 11 cambia la forma en la que una función de tu app puede acceder a la ubicación en segundo plano. En esta sección se describe cada uno de estos cambios.
Si una función de tu app accede a la ubicación en segundo plano, verifica que tal acceso sea necesario. Procura obtener la información que la función necesita de otras maneras, como se describe en la página sobre cómo acceder a la ubicación en segundo plano.
Cómo solicitar la ubicación en segundo plano por separado
Según se describe en la guía sobre cómo solicitar acceso a la ubicación en el tiempo de ejecución, debes realizar solicitudes de ubicación incrementales. Si tu app está orientada a Android 11 o a versiones posteriores, el sistema aplicará esta práctica recomendada. Si solicitas un permiso de ubicación en primer plano y el permiso de ubicación en segundo plano al mismo tiempo, el sistema ignorará la solicitud y no le otorgará a tu app ninguno de los dos permisos.
Cambios en el diálogo de permisos
Detalles del cambio
Nombre del cambio: BACKGROUND_RATIONALE_CHANGE_ID
ID del cambio: 147316723
Cómo activarlo o desactivarlo
A medida que pruebes la compatibilidad de tu app con Android 11, podrás activar o desactivar este cambio con los siguientes comandos de ADB:
adb shell am compat enable (147316723|BACKGROUND_RATIONALE_CHANGE_ID) PACKAGE_NAME
adb shell am compat disable (147316723|BACKGROUND_RATIONALE_CHANGE_ID) PACKAGE_NAME
Para obtener más información sobre el marco de compatibilidad y cómo activar o desactivar los cambios, consulta Cómo probar y depurar los cambios de comportamiento de la plataforma en tu app.
Cuando una función de tu app solicita la ubicación en segundo plano en un dispositivo que ejecuta Android 11 o una versión posterior, el diálogo del sistema no incluye un botón para habilitar el acceso a la ubicación en segundo plano. Cuando deseen habilitar el acceso a la ubicación en segundo plano, los usuarios deberán configurar la opción Permitir todo el tiempo para el permiso de ubicación de tu app en una página de configuración, como se describe en la guía Cómo solicitar acceso a la ubicación en segundo plano.
Recursos adicionales
Para obtener más información sobre cómo acceder a la ubicación en segundo plano, consulta los siguientes materiales: