2013-06-07 28 views
7

Testowałem nowe API lokalizacji Androida przez kilka tygodni. Generalnie działają całkiem nieźle, jednak nowy dostawca lokalizacji często traci fabułę.Uległa utracie dostawcy usługi Android Fused Location

W szczególności łączę przykład oparty na the receive location updates example. Działa poprawnie, a aktualizacje lokalizacji są odbierane zgodnie z oczekiwaniami.

Problem wydaje się być związany z samym dostawcą usługi Fused. W niektórych obszarach (szczególnie w moim domu) całkowicie się gubi. Nagle pomyśli, że jestem kilometr od miejsca, w którym jestem. Wokół miejsca, w którym pracuję (jest to obszar bardziej zabudowany), jest on znacznie dokładniejszy i zawsze w miarę zbliżony do miejsca, w którym aktualnie się znajduję (w trybie zrównoważonym).

Podjęłam wiele prób rozwiązania tego problemu, w tym przełączenia na PRIORITY_HIGH_ACCURACY, gdy podejrzewam, że to pomyłka, lub użycia starszego menedżera LocationManager w celu uzyskania poprawki GPS, aby ustalić, gdzie naprawdę jestem. Ale wydaje się, że nic nie pomaga. Podejrzewam, że Google ma złe dane dotyczące lokalizacji niektórych mobilnych wież hotspotów WiFi w moim domu, a kiedy łączy się z pewnymi wieżami, nagle skacze o kilka kilometrów od prawdziwej lokalizacji. Jest to bardzo denerwujące i przeszkadza również interfejsowi Geofence API. Wszelkie porady, jak mogę to naprawić?

+0

co masz na myśli, przechodząc na stary menedżer lokalizacji i GPS nie pomaga? – paul

+0

Niestety, nie otrzymałem powiadomienia o Twoim komentarzu. Istnieje inny menedżer LocationManager w innym obszarze nazw: http://developer.android.com/reference/android/location/LocationManager.html –

+2

Aha, i tak, GPS zawsze rozwiązuje problem. Wydaje się, że nieprawidłowe lokalizacje są związane ze złymi odczytami z otaczających wież komórkowych. –

Odpowiedz

1

Czy możesz po prostu zignorować aktualizacje lokalizacji, które są niedokładne? Ten kod został wydany w Google IO 2013, tak myślę, więc może nadal mieć pewne błędy.

(mam przeżywa to samo co ty. Obszar wiejski, dostawca bezpiecznikami Lokalizacja daje mi miejsca na miejsce)

+0

Witam, Niestety, nie mogę. Zgłasza wysoką dokładność. Na przykład powie mi, że jest dokładna na 11 metrów, ale w rzeczywistości jest oddalona o 1,5 km. A potem nagle znowu się pojawia. Teraz wystarczy dokładnie sprawdzić wszystkie jego wyniki. Mam tylko nadzieję, że poprawią się w miarę upływu czasu. Jest także o wiele bardziej dokładny w mocno zabudowanych obszarach. Myślę, że informacja o wieży mobilnej w niektórych miejscach jest po prostu przestarzała. –

+0

Tylko na przyszłość; W rzeczywistości zapomniałem nadać mojej aplikacji uprawnienie "Android.permission.ACCESS_FINE_LOCATION". Dostawca usługi Fused Location nadal działa, ale poda tylko niedokładne lokalizacje. –

+0

Tak, nie, zdecydowanie mam dobrą i gruba lokalizację. Przez długi czas usługodawca zapewniający bezpieczną lokalizację jest niesamowicie dokładny, bez dotykania GPS. Uważam, że jest to szczególnie prawdziwe w mieście, w którym GPS i tak czasem się myli. –

0

Nie ma złych danych o niektórych AP WIFI od czasu do czasu, a te wydają naprawić się po pewnym czasie. Wskazówki dotyczące tego, co się dzieje, można znaleźć w zwracanej dokładności. Jeśli trafi w niewłaściwym miejscu, dokładność jest duża (setki metrów), co oznacza, że ​​dostawca bazy danych korzysta z lokalizacji komórki. Może to oznaczać, że nie ma zbyt wielu punktów dostępowych, w których mieszkasz, i że od czasu do czasu możesz uzyskać tylko lokalizację Wi-Fi (lub co jakiś czas nie możesz uzyskać lokalizacji Wi-Fi). FLP powinien lepiej radzić sobie z unikaniem tych skoków w miarę postępu algorytmów.

Jeśli otrzymana zła lokalizacja ma niewielką dokładność (około 30 metrów), oznacza to, że jest to lokalizacja Wi-Fi, a informacja o złej bazie AP prawdopodobnie wyjaśnia problem.

Powiązane problemy