GPS lub triangulacji przy ustalaniu położenia użytkownika na mapie?

głosy
1

I zostały programowania aplikacji z wykorzystaniem mapkit i SDK 3.0. Wszystko działa w porządku z wyjątkiem jednego szczegółu. Zauważyłem, że podczas wyświetlania userlocation uzyskać różne położenia użytkownika na mapie zależny od aktualnej sieci. Czytałem o tym problemie i zrozumieć, że to jest wspólne? W moim WLAN jest pozycja użytkownik poprawnie wyświetlane. Podczas korzystania z sieci 3G (T-mobile) pozycja jest około 100 metrów od mojego aktualnego położenia. Rozumiem, że ma do czynienia z siatką celluar telefonicznej przy użyciu triangulacji i WLAN jest GPS lub WiFi hotspot używany. Więc na moje pytanie. Czy istnieje sposób, aby obejść to? Moja aplikacja pokazuje pozycje w mieście, a także odległości do tych pozycjach. Jest to bardzo oczywiste, a także missleading jeśli pozycja jest fałszywe ze względu na krótkich dystansach. Czy istnieje sposób (w kodzie), aby określić, które metody są stosowane do uzyskania stanowisko służbowe użytkownika? Ja testowałem wszystkie inne aplikacje na moim iPhone przy użyciu mapy i problem wydaje się być taka sama przez wszystkie z nich. (Jeśli ktoś chce przetestować aplikację jest w App Store za darmo pod car2go również inne komentarze są oczywiście ciekawe) Z góry dzięki! -pętla-

Utwórz 25/08/2009 o 13:14
źródło użytkownik
W innych językach...                            


3 odpowiedzi

głosy
1

Rdzeń Lokalizacja dostarcza informacji o pionowym i poziomym dokładność lokalizacji, która jest sprawozdawczego. Należy użyć tego dokładność zgłosić użytkownikowi jeśli lokalizacja jest podejrzany. Mapy Google robi to poprzez zwiększenie rozmiaru niebieskim kręgu wokół znacznika lokalizacji. Istnieją inne sposoby, aby wskazać użytkownikowi, że lokalizacja jest podejrzany, alert pudełka, nie pokazując lokalizację, jeśli wykracza poza jakiejś ustalonej dokładności, itp

Zobacz: http://developer.apple.com/iphone/library/documentation/CoreLocation/Reference/CLLocation_Class/CLLocation/CLLocation.html#//apple_ref/occ/instp/CLLocation/horizontalAccuracy

Odpowiedział 25/08/2009 o 14:07
źródło użytkownik

głosy
0

Być może można użyć bezpośrednio CoreLocation. CLLocationManagerdaje CLLocationobiektów niż to ich dokładność. Jeśli masz dokładnością poniżej 50 metrów, to miejsce prawdopodobnie pochodzi z GPS.

Odpowiedział 25/08/2009 o 13:59
źródło użytkownik

głosy
0

Używa alternatywnego źródła dla swojej lokalizacji? Przenośne urządzenia GPS by rade.

Prawdziwe pytanie brzmi: w jaki sposób można skorygować dane są określone przez triangulacji 3G. Zastanawiam się, czy można zrobić różnicę do poprawiania błędów 3G lokalizacja.

1) w danym mieście, skalibrować błędy 3G lokalizacji przez wykreślenie miasta. To może być korygowane przez sieci 3G w każdej chwili, więc trzeba by mieć sposób weryfikacji i ponownej kalibracji.

2) Kalibracja lokalizację sieci 3G w użyciu znanej lokalizacji - miejsce 3G wraz z lokalizacją GPS. Weź to jako różnicowy, który może być stosowany w innych miejscach 3G. To zakłada konsekwentne przesunięcia w obliczeniach triangulacji, która prawdopodobnie nie jest rzeczywistość.

3) Odczekać do sieci 3G, aby to naprawić i nic nie robić w tym czasie.

4) Zapewnienie operatorem sieci 3G z informacją o błędzie w ich triangulacji i sprawdzić, czy to jest dla nich priorytetem.

Nie mogę myśleć o żadnych innych żywych opcji ...

Odpowiedział 25/08/2009 o 13:24
źródło użytkownik

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more