Web

Mobile Web Teil 2 - WRT

Im ersten Teil von "Mobile Web WRT" waren die Widgets noch optimierungsbedürftig. Um es direkt vorweg zu nehmen: sind sie immer noch. Aber es gibt neue Erkenntnisse und zwar in den folgenden Bereichen:
  * Persistente Objekte
  * Zugriff auf Standort Informationen (GPS)
  * Netzwerkzugriffe
  * Aptana Studio und der Emulator

Persistente Objekte
Nicht selten besteht die Anforderung das ein Programm sich bestimmte Daten speichert und das diese Daten beim erneuten ausführen wieder zur Verfügung stehen. Im Zeitalter der "Cloud" kann man natürlich sämtliche Daten einfach an einen Server schicken und diese einfach von dort aus wieder laden. Wir betrachten hier aber die Möglichkeiten von WRT und es ist zum Glück mehr als einfach Daten zu speichern und wieder zu laden. Und das geht so:
   // Save
   widget.setPreferenceForKey("VALUE", "KEY");

   // Load
   var value = widget.preferenceForKey("KEY");

Da wir uns innerhalb eines JavaScript Kontextes bewegen kann man natürlich für den "VALUE" Part auch JSON verwenden und kann so komplexe Objekte auf recht einfache Art und Weise speichern und wieder laden.
Da es ja bei diesem Experiment darum geht möglichst viele Devices zu unterstützen schauen wir schnell ob wir einer proprietären Funktion auf den Leim gegangen sind. Das Resultat ist sehr erfreulich, denn die Funktion finden wir bei:
Opera
Apple/iPhone
Da das "Widget"-Element Bestandteil von WebKit ist, kann es durchaus sein das Android und der Palm Pre diese Funktionen kennen.

Mobile Web Teil 1 - WRT

Ich habe ja vor einigen Tagen angekündigt, das ich hier über Ansätze schreibe, wie man webbasierte Anwendungen auf einem mobilen Endgerät entwickeln kann. Das Ziel ist es, am Ende eine Anwendung zu haben, die nahezu alle marktrelevanten (neuen) Endgeräte abdeckt. Dabei sollte die verwendete Technologie möglichst identisch und der Aufwand gering sein. Mal schauen wie weit wir damit kommen.

Als ersten Kandidaten habe ich mit die Web Runtime Widgets (WRT) ausgesucht. Die nachfolgenden Beispiele beziehen auf Endgeräte mit Touch Screen, bei denen als Basis die S60 5th Edition dient.

Nach aktuellem Stand basieren die folgenden Endgeräte auf der S60 5th Edition:
  * Nokia 5800 XpressMusic
  * Nokia N97
  * Samsung i8910 Omnia HD
  * Sony Ericsson Satio

Um ein Widgets zu erstellen benötigt man HTML, CSS und JavaScript Kenntnisse. Widgets lassen sich auf den Endgeräten installieren und bieten Zugriff auf bestimmte Systemressourcen.
Es gibt diverse Entwicklungstools und ich habe mich für Aptana Studio entschieden da diese Plattform auch iPhone Entwicklung ermöglicht. Leider wird derzeitig nur Windows und kein Linux unterstützt, eine Linux Version ist angekündigt.
Zu Installation und Basics von Aptana Studio möchte ich eigentlich nichts sagen, denn da gibt es gute Ressourcen im Web.

Einführung
In Aptana Studio kann man einfach ein existierendes Widget importieren oder ein neues erstellen. Widgets enden mit der Dateiendung ".wgz", allerdings sind Widgets einfache Zip-Archive. Man kann diese Archive also selber erzeugen und man benötigt Aptana Studio nicht unbedingt.

Mobile Entwicklung

Es ist nun knapp ein halbes Jahr her das ich über die mobile Fragmentierung des Marktes geschrieben habe und seither ist recht viel passiert. Der Markt ist noch stärker fragmentiert. Für den Hersteller, respektive den Entwickler, ist es noch aufwendiger eine breite Masse an Anwendern zu erreichen . Schauen wir uns die aktuelle Situation an. Als erstes schauen wir uns aktuelle Marktzahlen an des gesamten Marktes an.

Marktanteile Q1 2009:

Nokia: 40.43 %
Samsung: 19.91 %
LG: 9.83 %
Motorola: 6.39 %
Sony Ericsson: 6.3 %
Blackberry/RIM: 3.39 %
Apple: 1.65 %
Others: 12.09 %

Quelle: http://www.mobileisgood.com/statistics.php?year=2009

Wenn wir uns diese Zahlen anschauen und einmal den Anteil der Java-fähigen Geräte extrahieren kommen wir auf min. 70 % (Nokia + Samsung + Motorola + Blackberry + ein paar % others).

Die gleiche Betrachtung auf den Smartphone Markt angewendet zeigt (leider nur Q4/2008 Zahlen):

Nokia: 40.8 %
Blackbery/RIM: 19.5 %
Apple: 10.7 %
HTC: 4.3 %
Samsung: 4.2 %
Others: 20.5 %

Quelle: http://www.gartner.com/it/page.jsp?id=910112

Alleine Nokia und Blackberry/RIM kommen auf stolze 60.3 % und ich denke das man auch im Smartphone Markt von einer Java-Abdeckung von min. 2/3 ausgehen kann (und nein, den Win Mobile Java Stack zähle ich nicht dazu).

Was aber, wenn man nahezu 100% abdecken möchte? In Zeiten von Cloud computing und immer besser werdenden Browser Unterstützung liegt eine Webanwendung nahe - gemeinhin auch als Webseite bezeichnet. Interessanter Weise zeichnet sich bei den mobilen Geräten ein Trend ab, der eine Konsolidierung aufweist: Der mobile Browser. Schaut man sich den Trend an, dann zeichnet sich ab, das zukünftig die folgenden Browser auf mobilen Geräten zu finden sind:

WebKit basierend (Safari/Android/Nokia)
IE
Fennec/Firefox
Opera

Das ist eine recht positive Entwicklung denn sie birgt die Chance Entwicklungen einer breiten Masse zur Verfügung zu stellen.

Inhalt abgleichen

Back to top