Um die Geschwindigkeit in m/s oder die Längen und Breitenangaben des GPS Empfängers eines Android Gerätes zu ermitteln muss man als erstes in der Mainfest Datei der Answendung folgende Berechtigungen hinzufügen:
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS" />
<uses-permission android:name="android.permission.ACCESS_MOCK_LOCATION" />
<uses-permission android:name="android.permission.CONTROL_LOCATION_UPDATES" />
<uses-permission android:name="android.permission.INTERNET" />
Nun kann man mittels folgendem Code einen LocationListener hinzufügen:
myLocationManager = (LocationManager)getSystemService(Context.LOCATION_SERVICE);
myLocationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 0, 0, new LocationListener() {
public void onStatusChanged(String provider, int status, Bundle extras) { }
public void onProviderEnabled(String provider) { }
public void onProviderDisabled(String provider) { }
public void onLocationChanged(Location location) {
System.out.println("Speed: " + location.getSpeed());
System.out.println("Latitude: " + location.getLatitude());
System.out.println("Longitude: " + location.getLongitude());
System.out.println("Bearing: " + location.getBearing());
}
});
Wie man das Ganze auf einem iGerät (iPhone, iPad etc.) macht habe ich hier beschrieben.