Zwei Ärgerlichkeiten in iOS-Webapps
29. November 2011
Es ist ja wunderbar, dass es unter iOS schon seit Version 1 möglich ist, einfache Websites als Web-Applikation auf dem Homescreen abzulegen. Es handelt sich dabei um mehr als simple Bookmarks, denn beim Klick auf das Icon startet quasi eine dedizierte Browser-Instanz, die wahlweise auch die Adresszeile unterdrückt und somit potenziell wie eine native App wirken kann. Auf den ersten Blick. Frameworks wie Sencha Touch oder jQuery Mobile helfen dem geneigten Webdesigner dabei, amtliche Apps in Windeseile zu entwickeln, die auf Webtechnologien basieren, sich aber an den Paradigmen von nativen mobilen Apps orientieren.
Schön.
Weniger schön sind zwei Details, die ich hiermit anprangere:
1) Umgang mit einfachen Hyperlinks
Apple ist der Meinung, dass eine Web-App eine geschlossene Einheit sein muss, sobald man die Adresszeile über <meta name="apple-mobile-web-app-capable" content="yes" />
ausblendet. Jeglicher normaler Hyperlink ist dann toxisch; Sobald ein User innerhalb der App auf einen Link klickt, bricht die Web-App ab, man gelangt zum normalen MobileSafari-Browser, wo sich dann die gewünschte Website öffnet. Uncool. Der einzige Weg, innerhalb von Webapps zu navigieren, ist also das Nachladen von Daten per Ajax. Normale Seitenwechsel über normale Links brechen das Konzept, was aus meiner Sicht unverständlich ist.
In der von mir gestalteten Kultur-Terminkalender-App sind natürlich Hyperlinks zu den Websites aller Spielstätten enthalten. Aber wehe, man klickt dort tatsächlich drauf! Damit kommen wir zum zweiten Problem:
2) Fehlende Resume-Fähigkeit
Wenn die aktuell laufende Web-App beendet wird, ist sie beendet. Es gibt keinen Freeze-Zustand. Wer die App verlässt, muss sie danach neu starten und manuell zu seiner Unterseite zurückfinden. Extrem ärgerlich für den neugierigen Linkklicker. Er wird bestraft, fliegt aus der App und kommt nicht so leicht wieder zum Ausgangspunkt zurück.
Ich wünsche mir hier Besserung! Warum haben Web-Apps nicht eine eingebaute Webview-Funktion für externe Links, wie sie in fast allen nativen Apps (Twitter-Clients, RSS-Reader usw.) üblich sind? Man begibt sich kurz in das »echte« Web, und kann dann per Back-Button wieder zurück zur Web-App wechseln. Und interne Links sollten einfach per default innerhalb der App verbleiben, damit die Ajax-Laderei nicht mehr verplichtend, sondern nur noch eine Option ist
Und warum kann man nicht zumindest ein paar Megabyte RAM für laufende Web-Apps reservieren, um deren Zustand zu speichern, wenn man sie mal kurz verlassen muss?
Apple, mach mal bitte! Schnell.