Mantieni tutto organizzato con le raccolte
Salva e classifica i contenuti in base alle tue preferenze.
Per proteggere ulteriormente la privacy degli utenti, Android 11 aggiunge l'accesso alla posizione una tantum e modifica la modalità di concessione dell'accesso alla posizione in background. Questi
aggiornamenti interessano tutte le app eseguite su Android 11 e versioni successive.
Accesso una tantum
Figura 1. La finestra di dialogo di sistema per l'autorizzazione
alla posizione in primo piano include un'opzione chiamata Solo questa volta.
Su Android 11 e versioni successive, ogni volta che la tua app richiede l'accesso alla
posizione in primo piano, la finestra di dialogo
delle autorizzazioni di sistema include un'opzione chiamata Solo questa volta, come mostrato nella
figura 1. Questa opzione offre agli utenti un maggiore controllo sul momento in cui un'app può accedere
alle informazioni sulla posizione.
Android 11 modifica il modo in cui una funzionalità della tua app può accedere alla
posizione in background. Questa sezione
descrive ciascuna di queste modifiche.
Se una funzionalità della tua app accede alla posizione in background, verifica che tale
accesso sia necessario. Valuta la possibilità di ottenere le informazioni necessarie per la funzionalità in
altri modi, come descritto nella pagina su come accedere
alla posizione in background.
Richiedere separatamente la posizione in background
Come descritto nella guida su come richiedere l'accesso alla posizione in fase di runtime, devi eseguire richieste di posizione incrementali. Se la tua app ha come target
Android 11 o versioni successive, il sistema applica questa best practice. Se
richiedi un'autorizzazione di accesso alla posizione in primo piano e l'autorizzazione di accesso alla posizione
in background contemporaneamente, il sistema ignora la richiesta e non concede
all'app nessuna delle due autorizzazioni.
Modifiche alla finestra di autorizzazione
Modifica dettagli
Change Name: BACKGROUND_RATIONALE_CHANGE_ID
ID modifica: 147316723
Come attivare/disattivare
Durante il test della compatibilità dell'app con Android 11, puoi attivare o disattivare questa modifica
utilizzando i seguenti comandi ADB:
adb shell am compat enable (147316723|BACKGROUND_RATIONALE_CHANGE_ID) PACKAGE_NAMEadb shell am compat disable (147316723|BACKGROUND_RATIONALE_CHANGE_ID) PACKAGE_NAME
Quando una funzionalità della tua app richiede la posizione in background su un dispositivo con
Android 11 o versioni successive, la finestra di dialogo di sistema non include un pulsante
per attivare l'accesso alla posizione in background. Per attivare l'accesso alla posizione in background, gli utenti devono impostare l'opzione Consenti sempre per l'autorizzazione di accesso alla posizione della tua app in una pagina delle impostazioni, come descritto nella guida su come richiedere l'accesso alla posizione in background.
Risorse aggiuntive
Per ulteriori informazioni sull'accesso alla posizione in background, consulta i seguenti
materiali:
I campioni di contenuti e codice in questa pagina sono soggetti alle licenze descritte nella Licenza per i contenuti. Java e OpenJDK sono marchi o marchi registrati di Oracle e/o delle sue società consociate.
Ultimo aggiornamento 2025-08-27 UTC.
[[["Facile da capire","easyToUnderstand","thumb-up"],["Il problema è stato risolto","solvedMyProblem","thumb-up"],["Altra","otherUp","thumb-up"]],[["Mancano le informazioni di cui ho bisogno","missingTheInformationINeed","thumb-down"],["Troppo complicato/troppi passaggi","tooComplicatedTooManySteps","thumb-down"],["Obsoleti","outOfDate","thumb-down"],["Problema di traduzione","translationIssue","thumb-down"],["Problema relativo a esempi/codice","samplesCodeIssue","thumb-down"],["Altra","otherDown","thumb-down"]],["Ultimo aggiornamento 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)"]]