Quando un'app richiede la posizione di un dispositivo, può attendere la risposta alla richiesta oppure, utilizzando listener di posizione attivi, ricevere un aggiornamento della posizione opportunistico. Questa opzione era disponibile (senza restrizioni) su Android 9 e versioni precedenti ed era fornita quando un'app specificava solo la frequenza di aggiornamento della posizione attiva, lasciando vuota la frequenza passiva. Gli ascoltatori della posizione passivi non ricevono aggiornamenti sulla posizione opportunistici perché non specificano una frequenza di aggiornamento della posizione.
A partire da Android 10, per ricevere aggiornamenti opportunistici della posizione, gli sviluppatori devono specificare di aver bisogno di aggiornamenti della posizione passivi dalla classe FusedLocationProviderClient
.
Fused Location Provider
Le app possono specificare la frequenza con cui ricevono aggiornamenti sulla posizione opportunistici dalla classe FusedLocationProviderClient
in due modi.
- Specifica un valore nel metodo
setFastestInterval
inferiore al valore del parametrosetInterval
. Utilizza un valore di 0 ms o superiore. - Lascia che il valore venga impostato automaticamente lasciando
setFastestInterval
non specificato.
Impatto
Se non fornisci un valore per setFastestInterval
,
la tua app potrebbe registrare una significativa
riduzione degli aggiornamenti della posizione inviati.
Implementazione
Per implementare questa funzionalità non devi fare altro che utilizzare i valori suggeriti per il metodo setFastestInterval
della classe FusedLocationProviderClient
.