au point. J'utilise la méthode de Google Maps Android Api distanceEntre pour saisir la distance entre l'emplacement de l'utilisateur et un point sur la carte comme vous pouvez le voir ici:Google Maps Android Api v2 distanceEntre la méthode innacurate
float[] distance = new float[1];
Location currentLocation = PECApplication.getInstance().getLocationClient().getLastLocation();
Location.distanceBetween(currentLocation.getLatitude(), currentLocation.getLongitude(), marker.getPosition().latitude, marker.getPosition().longitude, distance);
TextView distanceView = (TextView) infoWindow.findViewById(R.id.eventDistanceValue);
distanceView.setText(formatDistance(distance[0]));
Le problème est que le résultat ne correspond pas au résultat que je reçois à partir du site Web de google maps. Dans l'un des cas, la distance de Google Maps Website était de 31 km et le résultat de la méthode distanceBetween était de 23 328 KM. Quelqu'un a une idée? Merci beaucoup.
Vous pourriez envisager d'afficher les valeurs réelles de latitude et de longitude qui vous ont donné ces résultats. En outre, 'Location' n'a rien à voir avec Maps V2. – CommonsWare
Juste une supposition éclairée: Google Maps vous donnera la longueur du voyage sur les routes, les sentiers, etc, tandis que la méthode 'distanceBetween()' calcule simplement la distance entre deux points "à vol d'oiseau" (ou plus techniquement correcte: déplacement'). Voir aussi: [distanceBetween() renvoie un résultat inexact?] (Http://stackoverflow.com/questions/14618016/distancebetween-returns-inaccurate-result) –