Restez organisé à l'aide des collections
Enregistrez et classez les contenus selon vos préférences.
Pour mieux protéger la confidentialité des utilisateurs, Android 11 ajoute un accès ponctuel à la position et modifie la façon dont les utilisateurs accordent l'accès à la position en arrière-plan. Ces mises à jour affectent toutes les applications exécutées sur Android 11 et versions ultérieures.
Accès ponctuel
Figure 1. La boîte de dialogue système pour l'autorisation de localisation au premier plan inclut une option appelée Uniquement cette fois-ci.
Sur Android 11 et versions ultérieures, chaque fois que votre application demande l'accès à la localisation au premier plan, la boîte de dialogue des autorisations système inclut une option appelée Uniquement cette fois-ci, comme illustré dans la figure 1. Cette option permet aux utilisateurs de mieux contrôler le moment où une application peut accéder aux informations de localisation.
Android 11 modifie la façon dont une fonctionnalité de votre application peut accéder à la position en arrière-plan. Cette section décrit chacune de ces modifications.
Si une fonctionnalité de votre application accède à la localisation en arrière-plan, vérifiez que cet accès est nécessaire. Pensez à obtenir les informations dont la fonctionnalité a besoin par d'autres moyens, comme décrit sur la page expliquant comment accéder à la localisation en arrière-plan.
Demander l'accès à la localisation en arrière-plan séparément
Comme décrit dans le guide sur la manière de demander l'accès à la position au moment de l'exécution, vous devez effectuer des demandes de localisation incrémentielles. Si votre application cible Android 11 ou version ultérieure, le système applique cette bonne pratique. Si vous demandez en même temps une autorisation d'accéder à la position au premier plan et en arrière-plan, le système ignore la demande et n'accorde aucune autorisation à votre application.
Modifications apportées à la boîte de dialogue des autorisations
Détails de la modification
Change Name (Modifier le nom) : BACKGROUND_RATIONALE_CHANGE_ID
ID de la modification : 147316723
Activer ou désactiver
Lorsque vous testez la compatibilité de votre application avec Android 11, vous pouvez activer ou désactiver cette modification à l'aide des commandes ADB suivantes :
adb shell am compat enable (147316723|BACKGROUND_RATIONALE_CHANGE_ID) PACKAGE_NAMEadb shell am compat disable (147316723|BACKGROUND_RATIONALE_CHANGE_ID) PACKAGE_NAME
Lorsqu'une fonctionnalité de votre application demande la localisation en arrière-plan sur un appareil équipé d'Android 11 ou version ultérieure, la boîte de dialogue système ne contient pas de bouton permettant d'activer l'accès à la localisation en arrière-plan. Pour activer l'accès à la localisation en arrière-plan, les utilisateurs doivent définir l'option Toujours autoriser pour l'autorisation de localisation de votre application sur une page de paramètres, comme décrit dans le guide sur la façon de demander la localisation en arrière-plan.
Ressources supplémentaires
Pour en savoir plus sur l'accès à la localisation en arrière-plan, consultez les ressources suivantes :
Le contenu et les exemples de code de cette page sont soumis aux licences décrites dans la Licence de contenu. Java et OpenJDK sont des marques ou des marques déposées d'Oracle et/ou de ses sociétés affiliées.
Dernière mise à jour le 2025/08/27 (UTC).
[[["Facile à comprendre","easyToUnderstand","thumb-up"],["J'ai pu résoudre mon problème","solvedMyProblem","thumb-up"],["Autre","otherUp","thumb-up"]],[["Il n'y a pas l'information dont j'ai besoin","missingTheInformationINeed","thumb-down"],["Trop compliqué/Trop d'étapes","tooComplicatedTooManySteps","thumb-down"],["Obsolète","outOfDate","thumb-down"],["Problème de traduction","translationIssue","thumb-down"],["Mauvais exemple/Erreur de code","samplesCodeIssue","thumb-down"],["Autre","otherDown","thumb-down"]],["Dernière mise à jour le 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)"]]