ich wollte den Umstieg auf OpenLayers 2.12 zumindest für ein paar Seiten mitmachen und dabei auch mal mit mobilen Geräten rumspielen. Ich werde das nicht weiter vertiefen, weil ich fast nichts testen kann, aber zumindest die Grundfunktionen wollte ich mal probieren… Oder das Testen outsourcen und Euch das probieren lassen
Könnte der eine oder andere bitte mal auf auf die Testseite schauen und sagen, ob (und wie weit) die bei ihm läuft?
Die gewünschte Funktion wäre
eine Karte…
links Knöpfe zum zoomen (die sind nicht schön, mehr der Kompromiss zwischen den Hosentaschentelefonen und den A5-Schreibblöcken)
die Karte ist mit rumrutschen auf dem Display verschiebbar
mit 2-Finger-Spreizen “pinch” zoombar, wenn man ein iPhone hat oder ein Android. Bei letzterem wäre es ein Glücksfall, wenn das geht (bisher konnte es jeder dritte Androide).
rechts oben ist ein Knopf, wenn man da drückt, wird die Ortungsfunktion verwendet (GPS, oder halt der WLAN/ Funkturm/ Google-IP-Ortung -Ersatz), falls man das dem Browser erlaubt
nach der Ortung kommt ein blauer Kreis um die Position
wenn man wandert, während der blaue Kreis sichtbar ist, wandert der mit, zentriert die Karte aber nicht mehr
klickt man auf den Kreis, geht ein Popup auf
schliessen sollte man das Popup auch können
nach 30 Sekunden wird der Akku geschont, also GPS ausgeschaltet und der blaue Kreis verschwindet wieder
1.) ist da
2.) sind da und funktionieren (könnten aber in bisschen kleiner sein - 66% würde reichen…)
3.) funktioniert
4.) geht (HTC HD2 mit ICS 4.0.3)
5.) ist da - hab aber grad keinen Satelliten bei der Hand (derzeit werde ich nach Tastendruck irgendwohin portiert…)
5a.) mit Funkzellenortung geht’s
EDIT 1:
6.) ja
7.) derzeit konnte ich noch nicht so weit wanden - kommt aber noch… ;9
8.) ja
9.) ja
10.) 28,29,30 - stimmt
EDIT 2:
5.) GPS funktioniert wie Funkzellenortung.
7.) bin zwar nicht gewandert, aber auf der Autobahn gefahren: Funktioniert ohne Probleme
Nachrag zu 2.)
Die Größe passt, wenn man Gerät Hochkant hält - bei Querformat könnten die Symbole kleiner sein.
Galaxy Nexus, Android 4.0.4, CM9 / Galaxy Nexus, Android 4.1 (Jelly Bean):
Chrome: funktioniert soweit alles (wird noch detailierter getestet)
Standard-Browser: funktioniert soweit alles (wird noch detailierter getestet)
Opera Mobile: funktioniert, aber multitouch-zoom sollte visuell hervorgehoben werden, oder direkt zoomen (nicht erst beim loslassen)
Firefox 14 Mobile: funktioniert, aber multitouch-zoom sollte visuell hervorgehoben werden, oder direkt zoomen (nicht erst beim loslassen)
Opera Mini (mein Favorit, da der kleinste Traffic): funktioniert nicht (kein verschieben der Karte möglich, multitouch-zoom geht nicht, GPS-Ortung geht nicht)
Edit: mit Android 4.1 ist es dasselbe wie mit Android 4.0.4
Mein Galaxy Nexus mit 4.0.4 stock ist beim Verschieben in chrome eben einmal komplett gecrasht. Mal schauen, ob sich das reproduzieren lässt (müsste ein heftiger Bug in Android sein).
Sonst funktioniert alles.
Was auffällt, ist wieder das alte Problem. Bei 320 DPI passen die “normalen” ~100DPI-Tiles nicht mehr recht. Du hast dich für die schönere Variante entschieden, die Tiles nicht aufzublasen (wie auf osm.org), was sie extrem hässlich und verwaschen erscheinen lässt - und etwas zu groß für meinen Geschmack. Auf der anderen Seite sind die unskalierten Texte nur schwer zu lesen, man muss schon genau hinschauen. Beim Laufen auf der Straße kann ich kaum was lesen. Da die hochauflösenden Displays vermutlich auch bald bei PCs einziehen (Apple macht’s mit dem MacBook mit “Retinadisplay” vor) werden, könnten wir uns mal Gedanken machen, wie man das angeht. Die grottige Skalierung von OpenLayers ist auf jeden Fall inakzeptabel. Höher aufgelöste Tiles wären eine Möglichkeit, vektorbasiertes erzeugt momentan auf jeden Fall noch zu viel Last.
Also Vektorzeichnen scheint mir nicht so aufwendig.
Die diversen Navis machen das vor. Die haben oft gerade mal einen 400 MHz Prozessor und es geht trotzdem.
Für die heutigen Smartphones und Tablets mit ihren 1+GHz als Single-/Dual-/Quad-Core sollte das kein wirkliches Problem sein. Ähnlich dürfte es für PCs aus den letzten zwei Jahren (2+GHz, Dual-/Quad-Core) sein.
Natürlich ist der Aufwand das Ganze als Vektoren im Browser zu zeichnen erheblich größer als bei einem Gerät für genau einen Zweck. Aber dafür liegen da ja auch mehrere Prozessor-Welten zwischen den dedizierten Geräten und den Smartphones/Tablets.
Kritisch dürfte vor allem sein, eine effiziente Datenorganisation zu entwickeln.
das ist auch alles nicht schwierig, sogar mit PostGIS recht trivial, da kann man sich auch SVG ausgeben lassen. Auch ein GeoServer kann passende Daten liefern, mit OpenLayers, WFS und SLD kann man da eine Menge machen. Aber wer will das haben, wieso sollte das jemand entwickeln? Die kartografische Qualität ist halt meckerfreier mit Tiles zu machen, was die Navis da darstellen will doch auf dem Bildschirm keiner sehen.
Samsung Galaxy S Plus (GT-I9001)
Buildnummer Gingerbread
ist vorhanden
sind vorhanden
funktioniert einwandfrei
2-Fingerspreizen funktioniert auch, jedoch verschwinden dann die unter 2. genannten Symbole und das Symbol für´s GPS
Soll heißen es wird das ganze Display gezoomt und nicht nur die Karte!
Es ging hier um Smartphones und andere Geräte mit hoher Pixeldichte (bis zu 300 dpi und mehr).
Dafür sind die für ca. 100 dpi vorberechneten Tiles leider keineswegs meckerfrei, weil entweder zu klein und damit unleserlich oder aufgeblasen und daher unscharf.
Unabhängigkeit von der Display-Auflösung erreicht man halt dann, wenn man nicht Pixelbrei verwendet sondern die Objekte als Vektoren und Punkte zeichnet.
Ein weiterer Vorteil von Vektoren sind beliebige Zoombarkeit, sowohl in Zwischenschritten als auch über das max. verfügbare Z18 hinaus. Ebenso könnte man bei Vektor-basierten Karten recht leicht Informationen Aus-/Einblenden/Hervorheben (z.B. alle Häuser weg oder alle Straßen/Wege weg). Auch der häufige Wunsch nach wählbaren POIs lässt sich anders als bei Pixelbrei realisieren, da an den Vektoren/Punkten ja noch Informationen hängen können.
Übrigens wird das bei der Flash-basierten http://www.flosm.de/html/POI-Karte.html bereits mit ausreichnder Perfomance gemacht. (Hat das schon jemand auf seinem Smartphone/Tablet ausprobiert?)
mal ne blöde (?) Zwischenfrage: Lässt sich das so modifizieren, so dass es ohne Onlineverbindung funktioniert. Natürlich muss man das Kartenmaterial vorher lokal speichern. Leider habe ich noch (!) keinerlei Erfahrung mit Openlayers, ob das möglich ist.
Auf meinem Huawei Ideos X3 geht das mit dem Standard Browser mit einem externen Bluetooth GPS-Logger iBlue 747.
Auf iPhone und iPad bekannter weise nicht, bei Android weiß ich es nicht.
Ansonsten läuft Flash auf Laptops und Desktops, deren Nutzer Flash installiert haben.
Aber es ging mir ja nicht um Flash, sonderen darum zu zeigen, dass eine Karten-Anzeige auf Vektorbasis funktioniert und auch ausreichend schnell sein kann. Das war ja mit deiner Bemerkung “vektorbasiertes erzeugt momentan auf jeden Fall noch zu viel Last” in Frage gestellt worden.
Ansonsten kann ich gerne auf Skobbler verweisen, deren Produkte für IOS und Android jeweils vektorbasiert arbeiten.
Auf Android 4.0.* mit dem Firefox 14 Mobile, läuft Flash gar nicht mal schlecht… Jedoch ab Android 4.1 wird Flash eigentlich auch nicht mehr unterstützt.
Aber dennoch: Flosm.org ist nicht bedienbar auf Android 4.1 mit Firefox 14 Mobile.
Wie bereits geschrieben ist http://www.flosm.de/html/POI-Karte.html vor allem ein Beispiel, dass Vektor-basierte Kartendarstellung (auf Lap-/Desk-top) ausreichend zügig funktioniert. Für Smartphones und Tablets wäre Skobler das passendere Beispiel.
Ich vermute auch das FLOSM ohne Berücksichtigung von Smartphones entwickelt wurde. Von daher erwarte ich auf solchen Geräten nicht unbedingt die optimale Bedienbarkeit.
naja… Flash gibt es nicht auf iOS, auf Android ist die Entwicklung eingestellt, auf 4.1 läuft es zwar, aber unsupported. Außerdem sind ab dem 15.8. keine Neuinstallationen mehr möglich, es gibt nur noch Security-Updates. Auf Linux das gleiche Bild: Entwicklung eingestellt, nur noch Security-Updates. Einzig Chromes eigenes Plugin bleibt aktuell. Auf Windows 8 gibt es in der Metro-Oberfläche auch Einschränkungen… Wer weiß, was noch alles gestrichen wird.
Es geht eigentlich mehr als ich erhofft hatte. Das liegt aber auch daran, dass ich hier eine andere Stichprobe erwischt hab, als ich vorher hatte. Eure Androids sind im Schnitt wesentlich moderner ausgerüstet als die in meinem Bekannten- und Kollegenkreis (dafür hab ich da auch iPhone-Nutzer).
Was das Layout und die Bedienung betrifft, muss ich mir noch überlegen, ob ich da was machen will, sowas ist ziemlich zeitraubend und noch frustrierender als das bisherige “läufts auf 5 Browsern”-Testen. Andererseits surfen halt immer mehr Leute mit winzigen Displays, wo man 8-Punkt-Schrift nicht mehr lesen kann und Bedienelemente in Daumengröße braucht. Dieser “Kundenkreis” will bedient werden…
Die Ortungsfunktion werde ich auf jeden Fall öfter nehmen in Zukunft. Jeder zweite hat modernste Ortungstechnik in der Hosentasche, wäre schade, wenn der seinen Standort auf der Karte mit Zoomen und Schieben suchen müsste.
@womisa: Ich denke schon, dass das auch offline geht (ausser dass vielleicht der eine oder andere Browser lokal kein JS ausführen will). Aber ich sehe den Vorteil nicht gegenüber den vielen Apps mit offline-Rasterkarten.