public class GPSLocator implements LocationListener{
LocationManager locMgr;
private double latitude = 0, longitude = 0;
private double accuracy;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
...
locMgr = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
locMgr.requestLocationUpdates(LocationManager.GPS_PROVIDER, 0, 0, this);
LocationProvider p = locMgr.getProvider(LocationManager.GPS_PROVIDER);
Toast.makeText(this, "Requires Satellite: " + p.requiresSatellite(), Toast.LENGTH_LONG).show();
}
public void onDestroy(){
locMgr.removeUpdates(this);
super.onDestroy();
}
/**
* The following are methods of the LocationListener class
*/
@Override
public void onLocationChanged(Location loc) {
latitude = loc.getLatitude();
longitude = loc.getLongitude();
accuracy = loc.getAccuracy();
}
@Override
public void onStatusChanged(String provider, int status, Bundle extras) {
switch (status) {
case LocationProvider.OUT_OF_SERVICE:
Toast.makeText(getApplicationContext(), "Status Changed: Out of Service",
Toast.LENGTH_SHORT).show();
break;
case LocationProvider.TEMPORARILY_UNAVAILABLE:
Toast.makeText(getApplicationContext(), "Status Changed: Temporarily Unavailable",
Toast.LENGTH_SHORT).show();
break;
case LocationProvider.AVAILABLE:
Toast.makeText(getApplicationContext(), "Status Changed: Available",
Toast.LENGTH_SHORT).show();
break;
}
}
@Override
public void onProviderEnabled(String provider) {
Toast.makeText(getApplicationContext(), "GPS Enabled", Toast.LENGTH_SHORT).show();
}
@Override
public void onProviderDisabled(String provider) {
Toast.makeText(getApplicationContext(), "GPS Disabled", Toast.LENGTH_SHORT).show();
}
};