Sto tentando di utilizzare lo Smart Location Library per ottenere aggiornamenti periodici della posizione. Ma quando si avvia il processo, l'ascoltatore viene attivato una volta, quindi non ci sono ulteriori aggiornamenti. Ecco il codice che ho usatoProblemi nell'uso di Smart Location Library
public void startTracking(View v) {
provider = new LocationGooglePlayServicesWithFallbackProvider(this);
Log.i("Tag","Start Tracking");
SmartLocation smartLocation = new SmartLocation.Builder(this)
.logging(true)
.build();
smartLocation.location(provider)
.config(LocationParams.BEST_EFFORT)
.start(this);
smartLocation.activity().start(this);
}
public void stopTracking(View v) {
Log.i("Tag","Stop Tracking");
SmartLocation.with(this).location().stop();
SmartLocation.with(this).activity().stop();
}
@Override
public void onActivityUpdated(DetectedActivity detectedActivity)
{
Log.i("Tag","ActivityUpdate : "+detectedActivity.toString());
}
@Override
public void onLocationUpdated(Location location)
{
Log.i("Tag","LocationUpdate : "+location.getLatitude()+","+location.getLongitude());
}
Questa è l'uscita Logcat ho ottenuto
01-27 14:09:01.791 3038-3038/com.angulusits.smartlocationtest I/Tag:
Start Tracking
01-27 14:09:01.879 3038-3038/com.angulusits.smartlocationtest I/Tag:
ActivityUpdate : DetectedActivity [type=STILL, confidence=100]
01-27 14:09:02.017 3038-3038/com.angulusits.smartlocationtest I/Tag:
LocationUpdate : <some-value>,<some-value>
Questo è dato non appena premo startButton, poi non più valori.
ho controllato il codice sulla libreria per il valore BEST_EFFORT quali è:
public static final LocationParams BEST_EFFORT = new Builder().setAccuracy(LocationAccuracy.MEDIUM).setDistance(150).setInterval(2500).build();
così mi aspettavo aggiornamenti ogni 2500 millisecs, anche se il dispositivo non è in movimento. Apprezzerei se qualcuno potesse indicarmi la giusta direzione.
Anche io di fronte allo stesso problema. l'onLocationUpdated chiama una volta quando ho avviato la procedura di avvio ma dopo non ci sono aggiornamenti. grazie per qualsiasi risposta – kiruba