Mobile AJAX

AJAX im Handy
Kommentare

Die Vorteile von AJAX User Interfaces sind unbestritten. AJAX-UIs bringen den von Desktop-Applikationen bekannten Komfort in den Browser und machen Services von jedem Browser aus zugänglich. Auch im mobilen Umfeld könnte sich AJAX durchsetzen. Dabei geht es jedoch um viel mehr, als nur das UI zu verbessern: Kann Mobile AJAX die Java-ME-Plattform ersetzen?

Mobile AJAX hört sich zunächst recht langweilig an. O.k., AJAX auf mobilen Geräten, sprich innerhalb mobiler Browser, aber war’s das schon? Nein. Denn nur auf den ersten Blick dreht sich Mobile AJAX tatsächlich nur um die Verbesserung des UI. Wenn man sich mehr mit der Materie beschäftigt und das mobile Umfeld genau studiert, dann wird man erkennen, dass Mobile AJAX imstande ist, ein paar ganz andere Probleme zu lösen. Die Rede ist vom Distributionskanal, dem Web, den nun auch mobile Entwickler nutzen können, um „Applikationen“ (besser: Services) zugänglich zu machen. Es geht auch um den sinnvollen Umgang mit der begrenzten Bandbreite: Ist die AJAX-Engine im Speicher, müssen viele AJAX-Applikationen nur noch pure Daten austauschen und können auf überflüssiges Markup verzichten. Diese und weitere Vorteile, aber auch Nachteile, zeigt der vorliegende Artikel.

Mobile AJAX

Wenn Sie diesen Artikel im Sonderheft erreicht haben, sollte die Definition von AJAX nicht mehr notwendig sein. Was ist also das „mobile“ in AJAX? Natürlich dreht es sich um die Anwendung von AJAX innerhalb von mobilen Webbrowsern. Die letzen Monate haben gezeigt, dass auch die mobilen Browser das Zeug für XHTML, JavaScript und CSS haben, die für AJAX notwendig sind. Es gibt derzeit zwei leistungsfähige Browser, die sich Mobile-AJAX-fähig nennen dürfen: Nokias OSS Browser und Opera Mobile. Während Nokias Open Source Browser auf Symbian S60 lauffähig ist, spielt Opera Mobile sowohl auf S60 als auch auf Windows Mobile (Smartphone und Pocket PC). Damit erfüllen zwar viele derzeit auf dem Markt erhältliche Endgeräte die Voraussetzungen für Mobile AJAX, aber um die Massen zu bewegen, müsste Mobile AJAX jedoch auch von Browsern im Low-end-Bereich unterstützt werden. S60 oder Windows Mobile sind immer noch Betriebssysteme für recht leistungsstarke mobile Endgeräte; die breite Masse an günstigen Einstiegsgeräten kann durch die aktuellen Browser jedoch nicht erreicht werden. So what? Alles nur heiße Luft? Ganz offen gesagt: vielleicht.

Opera hat die mobile Gemeinde mit der Veröffentlichung des Opera Mini zuletzt stark beeindruckt. Opera Mini ist ein Java-basierter Webbrowser für die Java-ME-Plattform, der bereits auf fast jedem Endgerät läuft. Der Browser lagert alle ressourcenhungrigen Operationen auf einen Proxy-Server aus und hat unter den Benutzern bereits breite Zustimmung gefunden. Noch kann er kein AJAX, aber welche Features werden in Opera Mini v3 auf uns warten? Wenn diese Prognose stimmt, dann würde eine Java-ME-Applikation (der Browser) der eigenen Plattform (Java ME) Konkurrenz machen.

Pro & Con Mobile AJAX

Welches sind die Vor- und Nachteile von Mobile AJAX für die unterschiedlichen Benutzergruppen? Zunächst haben wir die Zahl der Benutzergruppen eingeschränkt: wir haben den Endkunden, den Entwickler, den Mobilfunkdienstleister und den Endgerätehersteller betrachtet. Damit sind die wesentlichen Player der Mobile Value Chain abgedeckt. Beginnen wir ganz vorne in der Value Chain, mit dem Endgerätehersteller.

Endgerätehersteller

Die Endgerätehersteller stehen am Anfang der Wertschöpfungskette und haben von sich aus ein Interesse, den Wert ihrer Produkte – sprich Mobiltelefone – für alle weiteren Elemente der Kette zu erhöhen. Nokia hat sich bisher als einer der aggressivsten Unterstützer von Mobile AJAX hervorgetan und wird den OSS Browser, der alle relevanten Technologien unterstützt, die für AJAX notwendig sind, auf allen neueren Handy-Modellen mit dem S60-Betriebssystem ab Werk installieren. Der bedeutendste Grund, einen Mobile-AJAX-fähigen Browser mit auf das Handy zu packen, sollte der Endkunde sein, der das Gerät benutzen „darf“. Da Mobile AJAX für den Endkunden und für die Entwickler von Mobile Services deutliche Vorteile bringt, verwundert es also nicht, dass Nokia diese Richtung einschlägt. Es bleibt abzuwarten, wie sich weitere Hersteller verhalten und welchen Erfolg diese Browser auch im Low- bis Mid-end-Markt haben. Einziger Nachteil ist der gestiegene Aufwand für den Endgerätehersteller, der nun auch noch einen komplexen Browser ins Telefon integrieren muss. Nokia hat dieses Problem geschickt gelöst, indem wichtige Bestandteile des Nokia Browsers Open Source sind und somit die Kosten für Weiterentwicklung und Wartung nicht ausschließlich von Nokia getragen werden.

Mobilfunkdienstleister

Auch für die Mobilfunkdienstleister kann Mobile AJAX eine Reihe von Vorteilen bringen, gepaart jedoch mit einem gravierenden Nachteil, der im schlimmsten Fall einen großen Teil der selbst angebotenen, kostenpflichtigen Dienste ersetzen könnte. Mobile AJAX kann, richtig angewendet, sehr viel Datenverkehr einsparen. Wenn die Mobilfunkdienstleister eine Kooperation mit den Herstellern eingehen würden und eine ausgewählte AJAX-Bibliothek direkt auf das Mobiltelefon speichern würden, könnte damit sehr viel Datenverkehr eingespart werden. Die mobilen Dienste würden deutlich schneller starten und somit die Benutzbarkeit von mobilen Diensten weiter erhöhen. Eine Annahme ist hierbei, dass die mobile Datenübertragung nicht endlos zur Verfügung steht, d.h. mobile Datenübertragung ist eine beschränkte „Ressource“. Momentan ist dies sicherlich noch nicht der Fall, da der erhoffte Erfolg mit UMTS noch ausblieb und somit sicherlich auch die Netze nicht ausgelastet sind. Insofern wird es den Mobilfunkdienstleister momentan freuen,wenn mit jedem Service die AJAX-Engine neu geladen wird (es sei denn, sie ist im Cache des Browsers). Ein weiterer Vorteil ist die Möglichkeit, eigene Services schnell anzupassen. Dies ist über Stylesheets problemlos möglich und denkbar wäre, dass ein Basis-Style-sheet für sämtliche Services auf dem Server bereitliegt. Eine Änderung in diesem Stylesheet und alle damit verknüpften Services haben einen neuen Look. Letztlich lässt sich jeder mobile Datenverkehr natürlich direkt in Einnahmen für den Mobilfunkdienstleister gleichsetzen, womit wir beim letzten Vorteil angekommen sind. Wenn beliebte Services im mobilen Umfeld ebenfalls Fuß fassen, so könnten die Einnahmen insgesamt durch die hohe Nutzung steigen, auch wenn AJAX-basierte Dienste mit dem Datenverkehr generell sparsamer umgehen.

Diesen Vorteilen steht ein bedeutender Nachteil gegenüber, der sich kurz mit den Worten „Ende des Walled Gardens“ bezeichnen lässt. Insofern die mobilen Internet-Verbindungen nicht künstlich beschränkt werden, kann der Endkunde auf jeden beliebigen mobilen Service zugreifen. Die Wahrscheinlichkeit, dass die Dienste innerhalb des Portals des Mobilfunkdienstleisters besser sind als die Dienste, die im offenen Internet angeboten werden, ist gering. Es käme einem Kampf Davids gegen Goliath gleich. Die Wahrscheinlichkeit, dass der so genannte Off-portal Traffic zunimmt, ist hoch. Damit sinkt die Chance, Dienste im Portal kostenpflichtig anzubieten.  Dies bedeutet nicht, dass sämtliche Dienste kostenlos sein werden (zumindest die Datenübertragung wird noch lange direkt über den Mobilfunkdienstleister abgerechnet), aber viele Dienste werden nicht über die Bezahlsysteme des Mobilfunkdienstleisters abgerechnet werden, sondern über andere Bezahl-Services, wie eventuell Google Checkout  (wann kommt die mobile Version?) und Paypal Mobile, oder die Dienste werden gar indirekt vom Endkunden über Werbung finanziert.

Entwickler

Für den Entwickler und für den Endkunden wird Mobile AJAX die meisten Vorteile bringen. Zum ersten Mal können Standard-Entwicklungsmethoden, die vom „normalen“ Web bekannt sind, direkt mobil umgesetzt werden. AJAX ist nichts Neues und es existiert bereits jetzt eine große Community, die beratend bei der Entwicklung von Diensten zur Seite steht. Die Fragmentierung, die im Java-ME-Bereich Tatsache ist, wird durch die wenigen Browser nicht so gravierend ausfallen. Sicherlich wird es Unterschiede geben, wie dies eben auch im Desktop-Bereich der Fall ist, aber im Vergleich mit der realen Fragmentierung im Java-ME-Bereich ist dieser Grad der Fragmentierung sehr gering. Des Weiteren ist der Distributionskanal für die entwickelten Dienste nun das offene Web; insofern die Internet-Verbindung nicht beschränkt wird, kann somit jeder Nutzer uneingeschränkt auf die Webseiten zugreifen.

Trotz all dieser Vorteile wird die Java-ME-Plattform weiterhin mit Mobile AJAX koexistieren, da manche Dinge browserbasiert derzeit einfach nicht möglich sind. Zunächst benötigen Mobile AJAX Services natürlich ständig eine Verbindung zum Server. Auch wenn Java-ME-Applikationen komplexer sind: in der U-Bahn und überall, wo keine ständige Verbindung zur Verfügung steht, werden Java-ME-Applikationen weiterhin von Vorteil sein. Der äußerst erfolgreiche Java ME Gaming-Bereich wird ebenfalls unangetastet bleiben. Mobile AJAX erhöht zwar die Responsiveness eines Service, schneller als die Verarbeitung direkt auf dem Handset zu machen, geht es aber nicht. Gerade Spiele haben hier extreme Anforderungen und Mobile AJAX wird hier rein technisch nicht gewinnen können. Weiterhin kann man über den Browser nicht direkt und vor allem nicht standardkonform auf Features wie die Kamera des Mobiltelefons, das Adresssbuch, die Low-level Bluetooth-Verbindung etc. zugreifen. Hier spielt die Java-ME-Plattform weiterhin ihre Stärken aus, trotz der hohen Fragmentierung. Der letzte Nachteil und momentanes Knock-out-Kriterium ist die Verfügbarkeit von Mobile-AJAX-fähigen Browsern für den Low- bis Mid-end-Gerätemarkt. Die meisten Endkunden verfügen eben leider nicht über teure High-end-Geräte mit S60-Betriebssystem und passendem Browser. Wie in der Einleitung erwähnt, könnten hier Opera und andere Browser-Hersteller jedoch für Überraschungen sorgen.

Endkunde

Eigentlich dreht sich doch alles um den Endkunden. Um ihn glücklich zu machen, muss er die Wahl zwischen den Diensten haben. Wenn er den mobilen E-Mail-Dienst von Anbieter X bevorzugt, dann sollte ihn niemand zwingen, einen anderen Dienst benutzen zu müssen. Mobile AJAX bietet genau das. Services, die per Web zugänglich sind, können per Definition von jedem passenden Browser aus aufgerufen werden. Der Kunde hat die Wahl und das macht ihn derzeit so glücklich im Desktop-Bereich. Im mobilen Web wird das nicht anders sein. Die Anpassung eines Service für Desktop-Browser auf einen mobilen (AJAX) Browser ist geringer als die Entwicklung von Java-ME-Applikationen. Waren mobile Webseiten bisher „ganz nett“, aber immer noch umständlich zu bedienen, so wird Mobile AJAX auch hier für Besserung sorgen. Wenn Sie es nicht glauben, installieren Sie die Opera-Plattform und probieren Sie die Demo-Dienste aus. Abbildung 1 zeigt die bekannten Screenshots dieser Demos, es handelt sich bei allen drei Beispielen um AJAX-Applikationen. Ein weiterer Pluspunkt für Mobile AJAX ist, dass manche Desktop-Services sogar ohne Umwandlung direkt im mobilen Browser benutzt werden können. Mit Nokias OSS Browser kann beispielsweise auf Google Mail zugegriffen werden. Weitere Dienste werden ähnlich gut funktionieren.

Abbildung 1: Screenshots der Demo-Applikationen der Opera Platform (Quelle: Opera Software ASA)

Derzeit gibt es unbestreitbar auch für den Endkunden noch ein paar gravierende Nachteile: die hohen Kosten für Datenverkehr, Kosten für ein High-end-Endgerät sowie die unabdingbare Verbindung mit dem Server, der den Service hostet, sind hier zu nennen. Aus diesem Grund bleibt Mobile AJAX für viele derzeit noch Zukunftsmusik; für alle drei Probleme bahnen sich jedoch gleichzeitig auch mögliche Lösungen an:

  • Der Datenverkehr wird immer berechnet werden. Selbst wenn sich Flatrates durchsetzen, werden sie nicht umsonst sein. Die Hoffnung besteht jedoch, dass die große Zahl der MVNOs (Mobile Virtual Network Operators, wie etwa Simyo, Aldi Talk etc.) hier auch den Markt für mobile Datenübertragungen aufmischen. Nicht umsonst, aber fair und nachvollziehbar sollte der Tarif gestaltet sein.
  • Das High-end-Endgerät könnte bald nicht mehr benötigt werden, wenn ein Browser-Hersteller es schafft, einen Mobile-AJAX-fähigen Browser für Low-end-Geräte zu entwickeln. Opera hat mit dem Opera Mini die mobile Community beeindruckt und wir warten gespannt auf die Folgeversion – dann mit Mobile AJAX?
  • Das letztgenannte Problem ist die Verbindung zum Server. Mit etwas Geschick kann ein mobiler Service entwickelt werden, den ein kurzfristiges Abreißen der Verbindung nicht gleich aus der Bahn wirft, das ist auch bei anderen Diensten der Fall, wie Google Mail beweist.
Fazit

Die mobile Welt wird sich nicht gleich morgen schlagartig verändern, soviel ist klar. Aber die Java-ME-Plattform bekommt dennoch in manchen Bereichen (außer Gaming) ernst zu nehmende Konkurrenz durch mobile, browserbasierte Services, die mittels Mobile AJAX verwirklicht werden. Diese sind dank bekannter Technologien rasch umsetzbar und bleiben immer auf dem neuesten Stand. Wie bereits erwähnt, bahnen sich für viele derzeitigen Probleme interessante Lösungen an, deren Praxistauglichkeit jedoch noch nicht unter Beweis gestellt werden konnte. Insofern ist die Java-ME-Plattform mit allen Vor- und Nachteilen immer noch die am besten unterstützte Zielplattform für mobile Applikationen. Das mobile Internet konnte bis zum heutigen Tag sein wahres Potenzial noch nicht so richtig entfalten. Gründe dafür gibt es viele: schlechte Browser, teurer Datenverkehr, restriktive Mobilfunkdienstleister und schlecht entwickelte mobile Dienste. AJAX gibt hier Hoffnung und macht mobile Dienste für den Endkunden und Entwickler viel einfacher.

Sven Haiges arbeitet als Senior Java Developer bei der Actionality GmbH in München. Sein Interesse gilt derzeit vor allem dem breiten Thema Web 2, (Mobile) AJAX und diversen Scriptsprachen wie Ruby, Groovy und den damit verbundenen Web Frameworks wie Ruby on Rails und Grails. Sie erreichen Sven über seine Homepage.
Unsere Redaktion empfiehlt:

Relevante Beiträge

Meinungen zu diesem Beitrag

X
- Gib Deinen Standort ein -
- or -