Please hold the Line!
JavaFX Mobile hebt nicht ab - Part 2
Theorie vs. Praxis
Was sich in der Theorie gut anhört, hat sich in der Praxis bisher leider nicht durchsetzen können. Während es mittlerweile deutlich über 150 000 iPhone-Apps und ca. 30 000 Android-Anwendungen gibt, ist die Zahl der „Real-Life“-JavaFX-Anwendungen im Allgemeinen und die der JavaFX-Mobile-Anwendungen im Speziellen im Markt vernachlässigbar. Woran liegt das?
Zunächst muss man sich sicherlich einmal die Konkurrenz von JavaFX vor Augen halten. Da sind zum einen Flash/Flex und Silverlight für das Web. Im Bereich Mobile dagegen stellen Apples iPhone SDK, das Android SDK sowie das RIM SDK die Platzhirsche. Zwar wird durch diese drei Kandidaten nur ein Teil des gesamten Handset-Markts abgedeckt, aber dies ist eben genau der Teil, in dem Geld über den Verkauf von Mobile Apps generiert wird und somit ein realer Markt existiert.
Sieht man sich einmal die oben beschriebene Konkurrenzsituation an, so fällt auf, dass vor allem „Spezialanbieter“ die Nase vorn haben. So hat Apple z. B. nicht den Anspruch, ein- und dieselbe Anwendung sowohl auf dem Desktop als auch im Web und zu guter Letzt noch auf dem iPhone zum Laufen zu bringen. Und selbst für so verwandte Devices wie iPhone und iPad gibt der Style Guide klar vor, dass man aus ergonomischen Gesichtspunkten jeweils die speziell für das Ziel-Device dedizierten UI-Komponenten verwenden soll. „Write once, run anywhere“ scheint somit zwar medienwirksam zu sein, stellt in der Realität aber eher eine Bürde als einen Nutzen dar.
Auch die Anzahl der unterstützten Devices ist sicherlich ausschlaggebend für den bisher ausgebliebenen Erfolg von JavaFX Mobile. Offiziell werden nach wie vor nur zwei Geräte – LG Incite und HTC Touch Diamond – unterstützt. Zwar sollten JavaFX-Mobile-Anwendungen auch auf allen anderen Windows-Mobile-6-Endgeräten funktionieren, es wird aber ausdrücklich darauf hingewiesen, dass in diesen Fällen kein Support geleistet werden kann. Zwei mehr oder minder weit verbreitete Devices und nur ein unterstütztes mobiles Betriebssystem: Das ist ein bisschen wenig, um die Welt zu erobern.
Neben all den bisher genannten Gründen gibt es aber auch ganz pragmatische, technologische Faktoren, die aktuell dem Erfolg von JavaFX Mobile entgegenstehen. Einer davon ist die nach wie vor ungenügende Performance. Möchte man eine Anwendung erstellen, die deutlich mehr kann, als nur ein paar Tweets via REST API auszulesen, anzuzeigen und zu aktualisieren, dann stößt man beim aktuellen Stand der Dinge sehr schnell an die Grenzen des Machbaren. Was sich im Mobile Simulator noch performant verhält, wird spätestens auf dem realen Endgerät zur Qual. Anwendungen, wie sie aktuell in Apples App Store oder im Android Market unter den Top 20 zu finden sind, scheinen unter dem Aspekt der Usability nahezu nicht realisierbar.
Die Zukunft
Die gute Nachricht: Oracle hat sich seit der Übernahme von Sun
Microsystems mehrfach klar zur Weiterentwicklung von JavaFX
comittet und signalisiert, dass man bereit sei, deutlich mehr Geld
in dieses Thema zu investieren, als es in der Vergangenheit der
Fall gewesen ist. Dass dies nicht nur reines Marketing ist, zeigen
die seit dem erschienenen neuen Releases von JavaFX.
Ebenfalls positiv zu bewerten ist die Tatsache, dass es erste
Prototypen von JavaFX auf Android-Geräten bzw. -Emulatoren gibt und
andere Mobile OS folgen sollen. Ob es am Ende tatsächlich eine
JavaFX Runtime für Android geben wird, ist eher eine strategische
Entscheidung von Oracle und Google.
Des Weiteren liest man in den verschiedenen JavaFXForen immer
wieder von einem geplanten JavaFX MSA Player, d. h. einer Java
Runtime, die als Basis „lediglich“ die Mobile Service Architecture
(JSR 248) benötigt und somit eine sehr große Menge an mobilen
Endgeräten JavaFX „enablen“ würde. Dies wären ein großer und
wichtiger Schritt für JavaFX Mobile und gleichzeitig der Schlüssel
zu einem deutlich größeren Markt.
Fazit
JavaFX Mobile scheint in der Theorie der richtige Schritt zu
sein, um Java auf den verschiedenen, mobilen Endgeräten endlich die
Bedeutung zukommen zu lassen, die es verdient. Ausreichend
Potenzial ist in Form von Java ME APIs, bestehendem
Java-Community-Code und jeder Menge Mobile-Java-Entwicklern
vorhanden. In der Praxis hängt JavaFX Mobile dagegen um Lichtjahre
hinter seinen Konkurrenten aus den Häusern Apple, Google und RIM
hinterher. Alle drei zeichnen sich durch klare Strategien und das
Vermeiden von Fragmentierung aus.
Ein wichtiger Schritt zum Erfolg könnte die Verbreitung einer
einheitlichen JavaFX Runtime auf Basis des MSA (JSR 248) für alle
wichtigen Mobile OS werden – ausgenommen dem iPhone-OS natürlich,
denn da hält Steve Jobs auch in Zukunft mit sehr hoher
Wahrscheinlichkeit seine „schützende“ Hand vor. Ein weiterer
wichtiger Schritt wäre der Auf- bzw. Ausbau des
JavaFX-Mobile-Profiles um wichtige Handset-Funktionalitäten.
Denkbar wären vereinfachte Zugriffe auf das Adressbuch oder den
Kalender – falls vorhanden. Und natürlich eine direkte
Unterstützung der Telefonie- und SMS-/MMS-Features.
Der Titel dieses Artikels „Please hold the Line!“ ist nicht von
ungefähr so gewählt. Bezieht man ihn auf den heutigen Stand von
JavaFX Mobile, so ist er ein Indiz für die bisher noch
unzulängliche Performanz. Blickt man aber in die Zukunft, so kann
der Titel auch als Aufruf gesehen werden, nicht aufzugeben.
Potenzial ist ausreichend vorhanden – es gilt nun, dieses auch zu
nutzen.
Teile
- JavaFX Mobile hebt nicht ab
- Theorie vs. Praxis

Follow Us