J'ai un programme dans lequel les valeurs de latitude et de longitude d'un emplacement sont stockées dans une base de données que je télécharge.
Je souhaite connaître la distance entre ces coordonnées et ma position actuelle.
La classe Location a une méthode simple pour trouver la distance entre deux objets Location. J'ai donc pensé créer un objet Location avec les coordonnées, puis appeler la méthode.
Y a-t-il un moyen facile de faire ceci? En outre, s’il existe une autre équation fiable et assez simple qui n’encombrera pas trop les choses, elle fonctionnera également. Merci.
(Android.location.Location)
En supposant que vous ayez déjà un objet de localisation avec votre position actuelle.
Location targetLocation = new Location("");//provider name is unnecessary
targetLocation.setLatitude(0.0d);//your coords of course
targetLocation.setLongitude(0.0d);
float distanceInMeters = targetLocation.distanceTo(myLocation);
Vous pouvez créer des emplacements en utilisant leur constructeur , puis définissez les valeurs de latitude et de longitude.
final Location location = new Location("yourprovidername");
location.setLatitude(1.2345d);
location.setLongitude(1.2345d);
Je réponds encore parce que beaucoup de gens comme moi ne savent pas ce que "providername"
est réellement. Le code ci-dessous répond à la question:
Location location = new Location(LocationManager.GPS_PROVIDER);
location.setLatitude(23.5678);
location.setLongitude(34.456);
Ici, j'utilise "LocationManager.GPS_PROVIDER"
a fournisseur.