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 che vengono eseguite su Android 11 e versioni successive.
Accesso una tantum
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 su quando un'app può accedere alle informazioni sulla posizione.
Scopri di più su come il sistema gestisce le autorizzazioni una tantum.
Accesso alla posizione in background
Android 11 modifica la modalità di accesso alla posizione in background di una funzionalità della tua app. Questa sezione descrive ognuna di queste modifiche.
Se una funzionalità della tua app accede alla posizione in background, verifica che questo accesso sia necessario. Valuta la possibilità di ottenere le informazioni di cui la funzionalità ha bisogno in altri modi, come descritto nella pagina su come accedere alla posizione in background.
Richiedere la posizione in background separatamente
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 contemporaneamente un'autorizzazione di accesso alla posizione in primo piano e un'autorizzazione di accesso alla posizione in background, il sistema ignora la richiesta e non concede alla tua app nessuna delle due autorizzazioni.
Modifiche alla finestra di dialogo delle autorizzazioni
Dettagli modifiche
Nome modifica: BACKGROUND_RATIONALE_CHANGE_ID
ID modifica: 147316723
Come attivare/disattivare
Durante il test della compatibilità della tua 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
Per ulteriori informazioni sul framework di compatibilità e sull'attivazione/disattivazione delle modifiche, consulta Testare ed eseguire il debug delle modifiche al comportamento della piattaforma nella tua app.
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 la posizione in background.
Risorse aggiuntive
Per ulteriori informazioni sull'accesso alla posizione in background, consulta i seguenti materiali: