je dois surveiller les emplacements de l'utilisateur pour obtenir la latitude et la longtitude, quand j'utilise le fournisseur de réseau ou le fournisseur gps, son fonctionnement bien.Mais quand j'utilise les deux fournisseurs je n'ai pas valeur.Toute personne Solution. cherche et essayer beaucoup d'exemplesmoyen le plus simple utilisant réseau et gps Satellite Android
// Get the location manager
locationManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
// Define the criteria how to select the locatioin provider -> use
// default
Criteria criteria = new Criteria();
provider = locationManager.getBestProvider(criteria, true);
networkLoc = locationManager.getLastKnownLocation(LocationManager.NETWORK_PROVIDER);
gpsLoc = locationManager.getLastKnownLocation(LocationManager.GPS_PROVIDER);
if (networkLoc != null) {
System.out.println("Provider " + provider + " has been selected.");
double l = (double) (networkLoc.getLatitude());
double lng11 = (double) (networkLoc.getLongitude());
latituteField1.setText(Double.toString(l));
longitudeField1.setText(Double.toString(lng11));
}
if (gpsLoc != null) {
System.out.println("Provider " + provider + " has been selected.");
double l0t = (double) (gpsLoc.getLatitude());
double l0g = (double) (gpsLoc.getLongitude());
latituteField.setText(Double.toString(l0t));
longitudeField.setText(Double.toString(l0g));
}
locationManager.requestLocationUpdates(LocationManager.NETWORK_PROVIDER, 0, 0, this);
locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 0, 0, this);
}
@Override
protected void onResume() {
super.onResume();
locationManager.requestLocationUpdates(
LocationManager.NETWORK_PROVIDER,
MINIMUM_TIME_BETWEEN_UPDATES,
MINIMUM_DISTANCE_CHANGE_FOR_UPDATES,
this
); }
/* Remove the locationlistener updates when Activity is paused */
@Override
protected void onPause() {
super.onPause();
locationManager.requestLocationUpdates(
LocationManager.NETWORK_PROVIDER,
MINIMUM_TIME_BETWEEN_UPDATES,
MINIMUM_DISTANCE_CHANGE_FOR_UPDATES,
this
);
}
@Override
public void onLocationChanged(Location location) {
lat1 = (double) (networkLoc.getLatitude());
lng1 = (double) (networkLoc.getLongitude());
latituteField1.setText(Double.toString(lat1));
longitudeField1.setText(Double.toString(lng1));
lat = (double) (gpsLoc.getLatitude());
lng = (double) (gpsLoc.getLongitude());
latituteField.setText(Double.toString(lat));
longitudeField.setText(Double.toString(lng));
}
@Override
public void onStatusChanged(String provider, int status, Bundle extras) {
// TODO Auto-generated method stub
}
@Override
public void onProviderEnabled(String provider) {
Toast.makeText(this, "Enabled new provider " + provider,
Toast.LENGTH_SHORT).show();
}
@Override
public void onProviderDisabled(String provider) {
Toast.makeText(this, "Disenabled provider " + provider,
Toast.LENGTH_SHORT).show();
}
protected void Display(Cursor c) {
Toast.makeText(this, "rowid: " + c.getString(0) + "\n" +
"Latitude: " + c.getString(1) + "\n" + "Longitude: " + c.getString(2) + "\n" +
Toast.LENGTH_LONG, 0).show();
}
Pouvez-vous poster le code que vous utilisez et ne fonctionne pas? – SERPRO
pouvez-vous me guider quel est le problème dans mon code – Mercy