Mam program, w którym wartości szerokości i długości geograficznej lokalizacji są przechowywane w bazie danych, którą pobieram.
Chcę uzyskać odległość między tymi współrzędnymi a moją aktualną lokalizacją.
Klasa Location ma prostą metodę znajdowania odległości między dwoma obiektami Location, więc pomyślałem, że utworzę obiekt Location ze współrzędnymi, a następnie wywołam tę metodę.
Czy jest na to łatwy sposób? Ponadto, jeśli istnieje inne niezawodne, dość proste równanie, które nie zaśmieca zbytnio rzeczy, to też by działało. Dzięki.
(android.location.Location)
Odpowiedzi:
Zakładając, że masz już obiekt lokalizacji z bieżącą lokalizacją.
źródło
static { location.setLatitude(0.0d); location.setLongitude(0.0d); }
Możesz tworzyć lokalizacje używając ich konstruktora , a następnie ustawiać wartości szerokości geograficznej i szerokości geograficznej.
źródło
"yourprovidername"
?Odpowiadam ponownie, ponieważ wielu ludzi takich jak ja nie wie, co to
"providername"
właściwie jest. Poniższy kod odpowiada na pytanie:Tutaj używam
LocationManager.GPS_PROVIDER
jako nazwy dostawcy.źródło
LocationManager.GPS_PROVIDER
i czy są jakieś alternatywy, które moglibyśmy rozważyć?location
obiekt jest tworzony ręcznie, czy nie byłoby bardziej właściwe użycie pustego ciągu zamiastLocationManager.GPS_PROVIDER
,LocationManager.PASSIVE
lubLocationManager.NETWORK_PROVIDER
?