2014-12-16 9 views
5

Ich entwickle eine Android-App, die den aktuellen Standort des Benutzers und zeigt GPS-Standorte anderer Benutzer auf einer Karte, die mit einem bestimmten Radius fällt, sagen 20 Kilometer.Überprüfen, ob ein GPS-Standort in einem bestimmten Radius von einem anderen GPS-Standort in Android ist

Wenn ich beispielsweise der Benutzer bin, möchte ich die Standorte anderer Benutzer auf einer Karte anzeigen lassen, die sich in einem Umkreis von 20 Kilometern von meinem Standort befinden.

Ich kann meinen Standort, die Standorte anderer Benutzer speichern und sie auch auf der Karte darstellen. Ich bin nicht in der Lage herauszufinden, ob diese Benutzer im Umkreis von 20 Kilometern von meinem Standort fallen oder nicht.

Ich benutze Google Maps Android API v2 Orten auf der Karte zu zeichnen und Parse zum Speichern der GPS-Positionen (Längen- und Breitenkoordinaten)

ich für Lösungen gegoogelt aber vergeblich. Könnte jemand bitte einen Hinweis oder eine Referenz oder einen Beispielcode zur Verfügung stellen, um zu überprüfen, ob sich ein GPS-Standort in einem bestimmten Radius von einem anderen GPS-Standort befindet oder nicht.

Jede Hilfe wird geschätzt.

Antwort

11

Es ist sehr einfach. Wenn Sie einen Marker in Ihre Karte einfügen, erhalten Sie nur eine Entfernung von diesem Marker zu Ihrem aktuellen Standort, wenn die Entfernung < = 20 ist. Fügen Sie dann diesen Marker in Map hinzu. So ähnlich

float[] results = new float[1]; 
Location.distanceBetween(oldPosition.latitude, oldPosition.longitude, 
      newPosition.latitude, newPosition.longitude, results); 
+0

Wofür werden ** Ergebnisse ** verwendet? Kannst du es einfach erklären? – athira09

+0

@ athi09 Ergebnisvariable enthält Abstand. –

+0

Warum ist es _float [1] _? – athira09

Verwandte Themen