Organiza tus páginas con colecciones
Guarda y categoriza el contenido según tus preferencias.
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
Figura 1: El diálogo del sistema para el permiso de ubicación en primer plano incluye una opción llamada Solo esta vez.
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.
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_NAMEadb shell am compat disable (147316723|BACKGROUND_RATIONALE_CHANGE_ID) PACKAGE_NAME
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 el acceso a la ubicación en segundo plano, consulta los siguientes materiales:
El contenido y las muestras de código que aparecen en esta página están sujetas a las licencias que se describen en la Licencia de Contenido. Java y OpenJDK son marcas registradas de Oracle o sus afiliados.
Última actualización: 2025-08-27 (UTC)
[[["Fácil de comprender","easyToUnderstand","thumb-up"],["Resolvió mi problema","solvedMyProblem","thumb-up"],["Otro","otherUp","thumb-up"]],[["Falta la información que necesito","missingTheInformationINeed","thumb-down"],["Muy complicado o demasiados pasos","tooComplicatedTooManySteps","thumb-down"],["Desactualizado","outOfDate","thumb-down"],["Problema de traducción","translationIssue","thumb-down"],["Problema con las muestras o los códigos","samplesCodeIssue","thumb-down"],["Otro","otherDown","thumb-down"]],["Última actualización: 2025-08-27 (UTC)"],[],[],null,["To further protect user privacy, Android 11 adds one-time\nlocation access and changes how users grant background location access. These\nupdates affect all apps that run on Android 11 and higher.\n\nOne-time access \n**Figure 1.** System dialog for the foreground location permission includes an option called **Only this time**.\n\nOn Android 11 and higher, whenever your app requests access to\n[foreground location](/training/location/permissions#foreground), the system\npermissions dialog includes an option called **Only this time**, as shown in\nfigure 1. This option give users more control over when an app can access\nlocation information.\n\nLearn more about how the system handles [one-time\npermissions](/guide/topics/permissions/overview#one-time).\n\nBackground location access\n\nAndroid 11 changes how a feature in your app can gain access to\n[background location](/training/location/permissions#background). This section\ndescribes each of these changes.\n\nIf a feature in your app accesses location from the background, verify that such\naccess is necessary. Consider getting the information that the feature needs in\nother ways, as described on the page about how to [access\nlocation in the background](/training/location/background).\n\nRequest background location separately\n\nAs described in the guide on how to [request location access at\nruntime](/training/location/permissions#request-location-access-runtime), you\nshould perform incremental location requests. If your app targets\nAndroid 11 or higher, the system enforces this best practice. If\nyou request a foreground location permission and the background location\npermission at the same time, the system ignores the request and doesn't grant\nyour app either permission.\n\nPermission dialog changes \n\nChange details\n\n**Change Name** : `BACKGROUND_RATIONALE_CHANGE_ID`\n\n**Change ID** : `147316723`\n\nHow to toggle\n\nAs you test your app's compatibility with Android 11, you can toggle this change on or off\nusing the following ADB commands: \n\n adb shell am compat enable (\u003cvar translate=\"no\"\u003e147316723\u003c/var\u003e|\u003cvar translate=\"no\"\u003eBACKGROUND_RATIONALE_CHANGE_ID\u003c/var\u003e) \u003cvar translate=\"no\"\u003ePACKAGE_NAME\u003c/var\u003e\n adb shell am compat disable (\u003cvar translate=\"no\"\u003e147316723\u003c/var\u003e|\u003cvar translate=\"no\"\u003eBACKGROUND_RATIONALE_CHANGE_ID\u003c/var\u003e) \u003cvar translate=\"no\"\u003ePACKAGE_NAME\u003c/var\u003e\n\nFor more information about the compatibility framework and toggling changes, see\n[Test and debug platform behavior changes in\nyour app](/guide/app-compatibility/test-debug).\n\nWhen a feature in your app requests background location on a device that runs\nAndroid 11 or higher, the system dialog doesn't include a button\nto enable background location access. In order to enable background location\naccess, users must set the **Allow all the time** option for your app's location\npermission on a settings page, as described in the guide on how to [Request\nbackground location](/training/location/permissions#request-background-location).\n\nAdditional resources\n\nFor more information about accessing background location, view the following\nmaterials:\n\nVideos\n\n- [How to find possible background location\n usage](https://www.youtube.com/watch?v=xTVeFJZQ28c)"]]