Wie erhält Android den groben Standort?


15

Ich habe gelesen, dass Android (und ähnliche Betriebssysteme, z. B. iOS) den aktuellen groben Standort mithilfe von WiFi oder GSM-Tower-Triangulation ermitteln. Ich verstehe die Grundidee, habe aber Fragen zu den Details.

  1. Verwendet Android normalerweise beide Methoden oder bevorzugt es eine und greift auf die andere zurück?
  2. Kommuniziert es mit einem Server, um die Position über WiFi zu erhalten? (zB Senden der SIDs der WiFis an einen Webservice)
  3. Kommuniziert es mit dem Carrier, um die Position über die GSM-Türme zu erhalten, oder geschieht dies auf dem Gerät?

Antworten:


8

Es ist wirklich Sache des Entwicklers, wie der Ortungsdienst implementiert wird. Die vollständige Beschreibung finden Sie hier:

http://developer.android.com/guide/topics/location/obtaining-user-location.html

Die Grafik über 1/3 unten auf der Seite ist ziemlich nützlich, um zu sehen, was eine typische App tun könnte, aber auch hier liegt es ganz beim App-Entwickler. Die Ortungsdiensttypen sind:

  • Zwischengespeicherte Korrektur
  • Zell-ID
  • W-lan
  • Geographisches Positionierungs System
  • Scheinstandort

Wenn die App nur die Genehmigung für eine grobe Standortbestimmung anfordert, wird das GPS nicht zur Standortbestimmung verwendet.

Um Ihre Fragen zu beantworten ...

  1. Es liegt bei den einzelnen App-Entwicklern, aber in den meisten Fällen werden die Sequenzen "Cached Fix", "Cell-ID", "Wifi" und "GPS" in dieser Reihenfolge angezeigt.
  2. Ja, nachdem die Tower-IDs oder SSIDs der WLAN-Signale erfasst wurden, werden diese Daten an Google übertragen, um einen ungefähren Standort zu ermitteln.
  3. Nein, Google hat hier etwas wirklich Schlaues gemacht. Google verfügt über eine eigene Datenbank mit Mobilfunkstandorten und benötigt keine Interaktion mit dem Mobilfunkanbieter, um den Standort des Mobilfunkmastes zu bestimmen.

Dieser Artikel enthält einige Details http://franciscokattan.com/2010/02/06/dynamic-cell-id-clever-way-to-block-google-but-will-it-backfire/

In der Kurzversion sendet die App bei Verwendung einer App wie Google Maps die aktuellen Cell-ID-Informationen zusammen mit Ihrem aktuellen GPS-Fix zurück. Auf diese Weise erhält Google eine sehr gute Stichprobe der Signalstärken an verschiedenen Standorten und kann eine sehr umfangreiche Datenbank erstellen.


Ihre Antwort gefällt mir sehr, aber ich bin mir nicht sicher, ob Sie das Recht haben, "es liegt ganz beim Entwickler". Soweit ich das beurteilen kann, kann der Entwickler nur entscheiden, ob er den genauen oder den groben Standort erhält. Mit anderen Worten, er kann LocationManager.NETWORK_PROVIDER und / oder LocationManager.GPS_PROVIDER verwenden, um den Standort abzurufen. Ich denke er kann sich nicht entscheiden oder gar sehen, ob Wifi oder GSM genutzt wird, oder?
Tim Büthe

In den meisten Fällen ist es dem Entwickler egal, ob die Daten von WiFi oder Cell-ID stammen. Der Entwickler kann jedoch Einschränkungen festlegen, damit die App nur funktioniert, wenn WiFi deaktiviert oder GPRS / GSM deaktiviert ist. Ich habe Ihre Frage als "Gibt es eine Standardsequenz, der alle Apps folgen" interpretiert und die Antwort darauf lautet "Nein". In Bezug auf den Unterschied zwischen WiFi und Cell-ID hat der App-Entwickler jedoch nur begrenzte Möglichkeiten, einen bestimmten Ortungsdiensttyp anzufordern.
JadeMason

1
Kennen Sie eine Möglichkeit, den Standort von Wi-Fi-Hotspots in ihre Datenbank einzutragen, damit ich in meiner Nachbarschaft / in Innenräumen bessere Triangulationen habe? Ich habe einen Thread für diese Frage von mir geöffnet
Özgür

3

Vieles davon ist Carrier-spezifisch und ich bin kein Entwickler, aber hier ist, was ich aus den Interwebs und den Schulungen, die ich in der elektronischen Kriminalitätsermittlung hatte, zusammensetzen könnte:

  1. Ja, aber es hängt von den spezifischen LBS-Prioritäten der Apps ab, die vom Entwickler festgelegt werden und auf der aktuellen Kursgenauigkeit, den Leistungsstufen und vordefinierten Prioritäten basieren können.
  2. Ja. Die Carrier haben eigene Wifi-Basisstations-Standort-DBs.
  3. Ich kann nicht spezifisch mit Android sprechen, aber im Allgemeinen handelt es sich um einen Netzbetreiber- und Netzwerktyp (CDMA oder GSM). Telefone sind zu beidem in der Lage, aber vor einigen Jahren haben sie diese Arbeit auf dem Mobilteil aufgrund der Bandbreitenbeschränkungen ausgeführt.


0

Ihr Telefon weiß, welche Türme am nächsten liegen. Für jedes Land gibt es eine Anbieterdatenbank, deren Turm-ID sich wo auf der Karte befindet. Diese Datenbank ist möglicherweise klein genug, um von Ihrem Provider vorinstalliert oder drahtlos bereitgestellt zu werden. Wie ein Android-Handy diese Daten bekommt, weiß ich nicht.


-1

Ich habe etwas andere Antworten für # 3: Das Gerät könnte verwendet werden, wenn Sie Triangulation verwenden möchten, aber Sie müssen den Carrier verwenden, wenn Sie die Cell-ID und die Lokalisierung des GSM- (oder CDMA-) Turms abgleichen möchten.


Aber ist dies eine Option, die von einem App-Entwickler oder sogar einem Endbenutzer festgelegt werden kann, oder wird sie vom Netzbetreiber festgelegt?
Matt

Es ist obligatorisch, wenn Sie diese Methode zum Lokalisieren eines Geräts verwenden möchten. Mithilfe der Triangulation oder einer anderen Methode können Sie feststellen, wo Sie sich im Verhältnis zur Antennenposition befinden. Wenn Sie den Lat / Long der Antenne nicht kennen, können Sie Ihre Position nicht auf einer Karte ermitteln. Ich zu Hause bin ich klar :)
Rob

@Rob Aber du brauchst den Träger nicht, um die Position des Turms zu finden. Jeder Tower sendet eine eindeutige ID. Jeder kann diese ID unabhängig und ohne Interaktion mit dem Mobilfunkanbieter abrufen und zuordnen. Google tut dies seit einiger Zeit für Mobilfunkmasten und WLAN-Zugangspunkte. Das Auto von Google Streetview erfasst die Informationen während der Fahrt. Nutzer von Google Maps auf verschiedenen Plattformen senden auch anonyme Daten zurück, die GPS-Fixes mit Antennen- und WLAN-IDs und -Stärke entsprechen. Auf diese Weise erfasst Google einen Großteil seiner Verkehrsdaten in Städten. Dabei werden Geschwindigkeit und Position von vielen Google Maps-Nutzern zusammengefasst.
GAThrawn

Bist du sicher ? Sieht überraschend aus. Zum Beispiel wurde Google in Deutschland (und anderen Ländern in Europa) wegen der Erfassung von WLAN-Informationen angeklagt. Es sieht also so aus, als hätten sie diese Ressource nicht genutzt. Wenn Google eine GSM-Datenbank besitzt, sollte auf diese zugegriffen werden können, und ich habe noch nie davon gehört.
Rob

1
@Rob googlemobile.blogspot.com/2008/06/… "Das Telefon kennt die ID des aktuell verwendeten Mobilfunkmasts. Wenn das Telefon über GPS verfügt, sendet die Kartenanwendung auf dem Telefon die GPS-Koordinaten zusammen mit der Zellen-ID an dem Google-Standortserver. " Ich kann den Link momentan nicht finden, aber sie gaben vor einiger Zeit bekannt, dass die Blackberry Google Maps-App aus dem gleichen Grund eine WLAN-SSID und -Stärke in der Nähe zurücksendet. Dies ist nicht das Gleiche wie der Programmierfehler in der Streetview-Software, über den sie verklagt werden und der mehr WLAN-Daten erfasst hat, als vorgesehen.
GAThrawn
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.