Ma certamente!
Dunque, alla dichiarazione delle mie variabili ho:
codice:
private static LocationManager loc;
private Listener gpsListener= new Listener () {
public void onGpsStatusChanged(int status) {
switch (status) {
case GpsStatus.GPS_EVENT_FIRST_FIX:
Log.d(TAG, "onGpsStatusChanged First Fix");
break;
case GpsStatus.GPS_EVENT_SATELLITE_STATUS:
Log.d(TAG, "onGpsStatusChanged Satellite");
break;
case GpsStatus.GPS_EVENT_STARTED:
Log.d(TAG, "onGpsStatusChanged Started");
break;
case GpsStatus.GPS_EVENT_STOPPED:
Log.d(TAG, "onGpsStatusChanged Stopped");
break;
}
}
};
private static LocationListener onLocationChange=new LocationListener() {
public void onLocationChanged(Location loc) {
//sets and displays the lat/long when a location is provided
}
public void onProviderDisabled(String provider) {
Log.v(TAG, "onProviderDisabled");
}
public void onProviderEnabled(String provider) {
Log.v(TAG, "onProviderEnabled");
}
public void onStatusChanged(String provider, int status, Bundle extras) {
// required for interface, not used
}
};
Successivamente, ho definito:
codice:
loc = (LocationManager) context.getSystemService(Context.LOCATION_SERVICE); loc.requestLocationUpdates(LocationManager.GPS_PROVIDER, 0, 0,onLocationChange);
loc.addGpsStatusListener(gpsListener);
Il problema è che non entra nè in onGpsStatusChanged nè nel LocationListener....dove sbaglio?
Grazie