2010-08-04 10 views
5

Potrzebuję w mojej aplikacji Android odległość i czas jazdy między dwoma miastami.Android - odległość między dwoma miastami

Czy istnieje możliwość obliczenia tego na przykład za pomocą Google Navigatora lub Google Maps? (odległość jazdy, a nie odległość linii lotniczej)

Odpowiedz

1

Tak, jest to możliwe, ale musisz użyć interfejsu Google Maps Web API, ponieważ zestaw SDK systemu Android nie ma żadnych funkcji obliczania trasy (ponieważ v0.9).

można znaleźć jakieś próbki do obliczania trasy tutaj (patrz moja odpowiedź: How to draw a path on a map using kml file?)

Co zrobić, to utworzyć Mapy Google URL żądania w tym wszystkich niezbędnych parametrów, takich jak geo punktów i tryb (pieszych, jazdy) i następnie pobierz odpowiedź jako dane KML (xml) (wystarczy dodać & output = kml do adresu Google), która zawiera wszystkie potrzebne informacje (czas i odległość). Musisz wtedy przeanalizować odpowiedź (kml/xml), np. Parserem sax, jak w moim przykładowym kodzie.

zobaczyć również ten wpis: How to get Google Maps Public Transit Directions by HTTP server-side request

2

Zamiast używać bezpośrednio api internetową, jak wspomniano powyżej, należy użyć otoki Java dostarczone przez http://code.google.com/p/gdata-java-client/ więcej informacji na temat interfejsu API Map tu szczegółowo http://code.google.com/apis/maps/documentation/mapsdata/developers_guide_java.html

Należy pamiętać, że to NIE jest api dla apokaliptycznych map systemu Android, ale dodatkowe informacje o plikach api, więc będziesz musiał dołączyć słoik do kompilacji apk.