2015-01-10 13 views
6

Próbowałem Fused Location (GoogleApiClient), a było niedokładne, gdy otrzymałem lokalizację, dało mi to moją poprzednią lokalizację, nawet gdy pytam o nowy (obecny), poprosiłem o 10 wniosków (w celu być tak dokładnym, jak to możliwe), ale po 4-6 razach po prostu przestał się zwracać, a te, które otrzymał, były bardzo niedokładne (dokładność 881 m).android - LocationManager vs FusedLocation

Z drugiej strony, gdy korzystam z Menedżera lokalizacji, zawsze dawał mi on swoją lokalizację mniej więcej, nigdy nie zatrzymywał się w środku bez powodu i ogólnie był o wiele bardziej stabilny.

Więc w jaki sposób lepsza lokalizacja jest lepsza niż menedżer lokalizacji?

Odpowiedz

1

Dziwne !!! Fused location powinien być szybszy i powinien zapewniać dokładniejszą lokalizację.

  • upewnij się, że żądania aktualizacji lokalizacji

    LocationServices.FusedLocationApi.requestLocationUpdates(mGoogleApiClient, mLocationRequest, this);

    zamiast się ostatniej znanej lokalizacji

    mLastLocation = LocationServices.FusedLocationApi.getLastLocation(mGoogleApiClient);

  • i używasz LocationRequest.PRIORITY_HIGH_ACCURACY (GPS).

    Główna różnica pomiędzy Fused Location i Location Manager jest ten ostatni nie zależy Google Play Services

+0

Po prostu dał mi kolejny powód do korzystania LocationManager :) Zrobiłem wszystko co napisałem, skondensowane lokalizacja jest szybszy, nie ma wątpliwości, że ale szukam dokładności, a nie szybkości. Stałem blisko okna (częściowo w pomieszczeniu). Wstawiłem debugowanie w OnLocationChanged z topionego menedżera lokalizacji i lokalizacji, a pierwszy zatrzymał się, gdy czuł się z dokładnością 881. Z menedżerem lokalizacji zatrzymał żądanie tylko wtedy, gdy powiedziałem to (po 10 razach), a dokładność wynosiła 39m i lokalizacja była idealna! – Amos

+0

'Fused Location' jest dokładniejsza ... Używałem obu i znalazłem' Fused Location' uzyskując lokalizację zaraz po uruchomieniu aplikacji, z 'Location Manager' musiałem czekać 2-5 min. 'Location Manager' jest jednak łatwiejszy. Przynajmniej działający kod Fused Location. – j4rey89

+0

Stałem w jednym miejscu i poprosiłem o moją lokalizację. Było dobrze. Próbowałem tego samego podczas spaceru, lokalizacja była taka sama jak poprzednio. Myślałem, że nie chodzę poprawnie, więc zamknąłem aplikację, przeszedłem 200m i otworzyłem ją ponownie, by spróbować ponownie. Za pierwszym razem dałem mi swoją poprzednią lokalizację (200 m temu), próbując ponownie, dałem mi aktualną lokalizację. – Amos

Powiązane problemy