2010-09-03 8 views

Odpowiedz

54

geolokalizacji można obliczyć na podstawie:

  1. GPS (jeśli jest dostępny)
  2. dostępnych sieci Wi-Fi i mocnych sygnałów
  3. Dostępne wieże komórkowe i sygnału mocne
  4. IP Addr ess lookup

Zobacz W3C Geolocaton API i Google Gears API (na której oparty jest interfejs API geolokalizacji Chrome/W3C).

Chromium's geolocation source code można oglądać online.

+0

Dobre badania! +1 – splash

+1

+1 Dobra odpowiedź i dobrze sformatowana. Wskazujesz na kod źródłowy Google Gears, ale nie na Chrome, chociaż prawdopodobnie jest on identyczny dla dostawców lokalizacji. – Thomas

+0

Dzięki Thomas, poprawiłem ten link teraz. –

-1

myślę, że oni używać adresu IP i geolocation usługi jak http://www.ip2location.com/ lub (bardziej prawdopodobne) własnej geolocation database/obsługa)

+1

Chrome faktycznie odczytuje, jakie sieci Wi-Fi są w pobliżu, i przesyła ich identyfikatory SSID do Google, które zwracają przybliżony adres. Może to być upiorna dokładność, gdy Google jeździ swoimi samochodami Street View, nawet jeśli dekstop/laptop nie ma czujnika GPS. –

+0

@DanDascalescu Wi-Fi może być tylko częścią procesu określania. Ponadto musisz różnić się w Chrome na komórki i na komputer! Uważam, że Chrome korzysta głównie z interfejsu API HTML5, w którym Wi-Fi jest tylko jedną częścią. – splash

0

Wyglądają na kilka rzeczy: -> Unikalne identyfikatory (SSID) sieci bezprzewodowych w Twojej lokalizacji i moc sygnału. -> Adres IP (adres IP publiczny) -> GPS (jeśli jest dostępny) - dane> sieć komórkową (jeśli są dostępne)

8

Twoja lokalizacja może uzyskać za pomocą różnych usług i sprzętu dostępnego w urządzeniu. Najczęstsze z nich to: GPS, informacja o Wi-Fi, wieże komórek. Alternatywnie istnieje również wyszukiwanie adresu IP, jednak nie jest to bardzo dokładne i nie ma w nim nic szczególnego.

W twoim przypadku najprawdopodobniej użyto informacji o twojej sieci Wi-Fi. Istnieją olbrzymie bazy danych, które łączą sieci Wi-Fi z lokalizacją, stworzoną przez samochody z GPS-em & (np. Samochody Google Street View). Transmisja z komputera na serwer odbywa się zgodnie z W3C Geolocation API Specs, która jest częścią HTML5.

Źródło Chrome do tego? Here to punkt początkowy do rozpoczęcia. Lub jeśli wolisz starej przeglądarki plików: http://src.chromium.org/svn/trunk/src/chrome/browser/geolocation/

pliki wykonawcze dla lokalizacji za pośrednictwem WiFi:

  • wifi_data_provider_mac.cc
  • wifi_data_provider_linux.cc
  • wifi_data_provider_win.cc
-2

na Ostatnio Pracowałem nad przydziałem geograficznym HTML 5. Jest obsługiwany we wszystkich nowoczesnych przeglądarkach (IE9, Safari, FF, Opera).
Ale kiedy przyszedłem do Chrome, nie jest on obsługiwany. Spędziłem kilka godzin, aby to naprawić.
Wreszcie znalazłem rozwiązanie:

Geolokalizacja w przeglądarce Chrome jest domyślnie wyłączona. Aby go aktywować, użytkownicy muszą przejść do skrótu Chrome i dodać --enable-geolocation na końcu linii docelowej, na karcie Skrót.

+2

To nie jest prawda. A dokładniej, Twoja odpowiedź została opublikowana w 2012 roku i nie była prawdziwa od lat. Chrome 17/18 z pewnością domyślnie ma włączone geolokalizację. – mhenry1384

+0

To jest przerażające! Geolokalizacja jest tak precyzyjna, jak to tylko możliwe (do adresu Wi-Fi/ulicy), czy oznacza to, że każdy serwer internetowy, z którego teraz korzystam, zna mój adres w kilku domach? – Ruby

0

przeglądarka na komputerze nie ma GPS, jednak ma zewnętrzny adres IP (zwykle zewnętrzny adres IP routera). jeśli inne komponenty za tym samym routerem mają GPS - ta lokalizacja pinu do tego adresu IP i za pośrednictwem usług lokalizacyjnych dołącza tę lokalizację do przeglądarki.