Der iPhone-App Killer: Mobile Webbrowser bekommen endlich Zugriff auf die Geolocation!
Wer mobile Webseiten für Kunden entwickelt kennt die Frage sicher. Und jeder der die Frage gestellt bekommt, bevor die Auftragsbestätigung unterschrieben zurückgefaxt ist, wünscht sich, die Frage wäre nicht gekommen. Die Rede ist von ..
„Wir hätten gerne Location Based Service mit im Portal integriert, also für GPS Handys“
Früher blieb dem mobile Web’ler nur übrig, an dieser Stelle darauf zu verweisen, dass so was nur mit einer JavaME, Blackberry, Symbian, Android oder iPhone Applikation möglich ist, weil man über den Browser leider keinen Zugriff auf Gerätedaten wie die aktuelle Geoposition hat.
Meißtens verkauft man dann noch ein Feature, mit dem man sich per Texteingabe wenigstens händisch lokalisieren kann …
Doch Rettung naht.
Meine Theorie: 2009 wird das Jahr der Ortsbestimmung im Mobile Web Browser!
In den letzten Monaten sind Techniken, Tools und Standards entstanden, die uns in die Richtung bringen.
Ganz vorne dabei:navigator.geolocation.getCurrentPosition(function(pos){(pos.coords.latitude, pos.coords.longitude) }) Das W3C Konsortium hat sich zusammengesetzt und ein paar JavaScript Aufrufe standartisiert, mit denen man in Zukunft auf die Geopostion zugreifen können soll. Der Wichtigste istgetCurrentPosition( ) die ganze Geschichte findet ihr hier.
Die ersten Browserhersteller haben die Standards schon eingesetzt:
Mobile Web Browser
- Safari auf dem iPhone OS3
Das neue Betriebssystem des iPhones, das diesen Sommer erscheint soll auch eine neue Safari-Version enthalten. Diese soll dann auch die vom W3C vorgeschlagenen JavaScript zur Abfrage der Geokoordinaten ermöglichen.
In der neuen Doku vom Safari steht nämlich angeblich:
„Safari also supports the Geolocation JavaScript classes, which work with the onboard location services to retrieve the current location of the device.” - Google Gears
Google werkelt auch schon seit einiger Zeit an der Integration herum. Schon im August wurde eine Version von Google Gears für Windows Mobile veröffentlicht mit der man auf die Geokoordinaten zugreifen kann.
Auch Chrome für Android soll das demnächst möglich sein. - Auf dem Blackberry läuft das Ganze schon seit längerem, nämlich ab BB Browser v4.1. Leider als proprietäre Funktion implementiert, man in der Doku nachlesen kann. Zieht aber angeblich sehr viel Batterie, wenn man ständig das GPS laufen lässt … das ist wohl ein generelles Problem
Auf dem PC funktioniert das jedenfalls schon ganz nett
- Google Chrome und Firefox mit installiertem Google Gears. siehe hier
- Firefox mit dem Geode Plugin
- IE 7 mit installiertem Google Toolbar (Hat jemand nen Link dazu??)
- Opera versucht sich auch dran, siehe my.opera.com und labs.opera.com
- Mit Loki geht es auch. Da wird ein javaApplet instlliert, dass offenbar auf’s WLan des Rechners zugreift.
- Auf der IO2009 hat Google wieder viel Neues vorgestellt was in die Richtung geht. zB einen neuen „MyLocation“ Button in Google Maps.
- HTML5 soll das ganze sogar als Standard vorgeben. Somit wird wohl früher oder später jeder Browser zumindest theoretisch dazu fähig sein.

Geolocation in HTML5 .. via maxheapsize.com
Technisch gibt es verschiedene Möglichkeiten wie so eine Geolokalisierung ablaufen kann. Das hat zwar zunächts nichts mit der Unterstützung innerhalb des Browsers zu tun, ist aber trotzdem sehr wichtig für die Qualität der Lokalisierung.
- Über ein Matching der IP-Adresse. Vorteil: Funktioniert ohne Plugin und Sicherheitsproblem. Nachteil: liefert falsche oder ungenaue Ergebnisse (Region), für Handys sehr schlecht geeignet und ist Kostenpflichtig
- Über die GPS Daten. Vorteil: Sehr genau (10m). Nachteil: Dauert bis die Position ermittelt ist, funktioniert nur schlecht in Gebäuden
- WLan Ortung: Vorteil: Schnell, recht genau (ca. 20m) in Städten und in Gebäuden. Nachteil: Wo’s kein WLan gibt gibt’s auch keine WLan Ortung
- Ortung über die Funkzelle. Vorteil: schnell, überall verfügbar. Nachteil: recht ungenau (ca. 1km)
Am Ende läuft es also auf eine Mischung der einzelnen Techniken heraus, wie es Google und Apple beim iPhone sehr gut zeigen. Wichtig ist nur, dass man dann weiß, wie groß der Radius ist, von dem man gerade ausgeht. In der von W3C vorgestellte Geolocation API ist das leider nicht vorgesehen.
Die Daten, die die WiFi-Netze, IP Adressen und Funkzelleninfos dann in Geokoordinaten umwandeln kommen von verschiedenen Anbietern, an die sich dann die Browser(PlugIn) Hersteller anzapfen. Ein Bekannter Anbieter ist Skyhook
Sicherheit
Immer wieder erwähnt und sicher auch recht wichtig ist die Frage nach der Sicherheit. Wer will schon, dass jede x-beliebige Website egal ob mobile oder klassisch auf seine aktuelle Position zugreifen kann. Meiner Meinung nach tut’s ein Dialogfenster à la iPhone-Apps: „Darf diese Website auf ihre Position zugreifen ? Ja/Nein“ .. die Sicherheitsfuzzies im Heise-Forum würden das sicher anders sehen… http://www.heise.de/ix/news/foren/S-Handy-Viren-2-0/forum-140037/msg-15162213/read/. Trotz allem komme ich zu folgendem…
Fazit: Die Entwicklung, das Browser immer leistungsfähiger werden und zunehmend Applikationen überflüssig machen geht mit dieser Entwicklung weiter. Ich habe ja die Hoffnung, dass der Hype der iPhone-Applikationen der letzte Hype der nicht browserbasierten Applikationen sein wird.
Nochwas:
Diesen Blogeintrag wollte ich schon Ende letzten Jahres mit dem Titel „2009 wird das Jahr der Ortsbestimmung im Mobile Web Browser“ schreiben. Ich hatte Material gesammelt, das seitdem auf meinem Schriebtisch vergammelte. Nach einer kleinen Recherche gestern Nacht habe ich erschrocken feststellen müssen, dass wenn ich den Artikel nicht bald schriebe, die Leute mich auslachen, weil ich wieder mal nichts Neues erzähle…
Tags: api, Browser, gears, geolocation, google, iPhone, location, mobile browser, mobile web, opera, os3, safari
Mai 28th, 2009 at 20:45
[...] Entwicklung von Location-Aware-Apps (A/GPS) Ja - die Kollegen von insert EFFECT haben einen wunderbaren Blog-Post betreffend Web-Browser und dem Zugriff auf die GEO-Location geschrieben. Interessant sind u.a. [...]
Mai 29th, 2009 at 17:38
Well done!
Sehr informativ!
Juli 9th, 2009 at 14:16
Unser Content Partner Vascmo hat für Android die Geo Location Bestimmung über Browser schon im Einsatz, wenn auch noch im Beta Stadium.
Obwohl beides Safari basierte Browser sind, gehts aktuell nur mit Andorid Handelds..
i.vascmo.de