Artikelformat

Nokia Asha aus Entwicklersicht

Bild von Nokia Asha 303 und 311

Bei der Nokia Asha Touch Competition 2012 gehörte ich zu den Gewinnern. Ich habe Nokia Rückmeldungen zu ihren neuen Entwicklerwerkzeugen gegeben. Aus der Laudatio:

 “… for his very focused and relevant feedback around core app development. The issues raised showed a great understanding of the product and what areas most need improvement.”

Als Dank habe ich zwei neue Geräte erhalten, ein Asha 303 und ein Asha 311.

Bild von Nokia Asha 303 und 311

Die Geräte basieren auf dem erneuerten System Series 40, nicht zu verwechseln mit Symbian / Series 60. Das Betriebssystem ist sehr schnell und braucht wenig Speicher, so das man damit sehr preiswerte Geräte für den Massenmarkt bauen kann.

Das Asha 303 hat sowohl einen Touchscreen als auch eine Tastatur, mit der man sehr bequem SMS schreiben kann. Entwickelt werden kann das Asha 303 mit Java JME, von Nokia gibt es dafür das SDK 1.5.

Das Asha 311 hat nur einen Touchscreen ohne weiteres Tastenfeld, wie die „großen“ Smartphones. Die Softwareplattform wird deshalb “FullTouch” genannt. Es wird ebenfalls mit Java JME entwickelt, mit dem “Nokia SDK 2.0 for Java”. Die Nokia FullTouch-Handys können am ehesten mit dem Samsung Star verglichen werden.

Beide Geräte haben WLAN, worüber sich Entwickler freuen, weil man so nicht für jedes Gerät eine Datenflatrate braucht.

JME-Blues

Nun hat Java-ME seit der Aufkommen von Touchscreens eine traurige Nicht-Entwicklung durchgemacht. Die Elemente für die Navigation sind auf dem Stand eines Stift-basierten Palm-Pilot stehengeblieben. Als Programmier konnte man zwar Pointer-Events empfangen, das war es aber auch schon. Die Standard-Bedienelemente waren nicht für die Touchbedieung optimiert, und so musste man Sie aufwendig selbst nachbauen oder Fremdbibliotheken wie LWUIT verwenden. Richtiggehend ärgerlich waren die Bildschirmtastaturen, entweder bekommt man sie erst nach zweimaligen aktivieren eines Textfeldes, oder sie sind schlecht bedienbar, oder beides.

Während in anderen Bereichen JME bzw. J2ME durch verschiedene JSR erweitert wurde, funktionierte bei Touchscreens die Anpassung an den fortschreitenden Stand der Technik leider überhaupt nicht.

Mit den SDK 2.0 hat Nokia die UI-Elements an die Touchbedienung angepasst. Listen und Buttons haben die richtige Größe. Die Bildschirmtastatur ist die gleiche wie sie sonst von System genutzt wird.

Hinzugefügt wurde auch ein Element zum Umschalten zwischen verschiedenen Bildschirmansichten, die „CategoryBar“. Ich habe Sie beim Handylearn Counter eingebaut, so dass die Nutzer schnell zwischen Balkendiagramm und Tortendiagramm umschalten können.

Drei Ansichten von Handylearn Counter, umschaltbar mit der CategoryBar

Die Programmierung der CategoryBar folgt dem bekannten Muster von Commands und CommandListener. Damit nutzt man als Entwickler weiter die schön einfache Struktur des LCDUI. Aufpassen muss man bei den Icons der CategoryBar, sie müssen als RGB-PNG definiert werden, sonst werden sie nicht angezeigt. Normalerweise versuchen JME-Programmierer ja, die Bilder mit möglichst kleiner Bittiefe zu verwenden.

Mit dem neuen Series 40 SDK ist die normale UI-Toolkit endlich wieder nutzbar, um relativ einfach Anwendungen aus den Nicht-Spiele-Bereich zu erstellen. Schade ist, das man herstellerabhängig ist. Andererseits scheint Nokia ziemlich alleine an J2ME interessiert zu sein.

Update (10.5.2013)

Nokia ist inzwischen wohl auch aufgefallen, das oft zu Verwirrung zwischen Series 40 und Symbian (Series 60) kommt. Die neuste Version von Series 40 heißt jetzt Nokia Asha Platform 1.0. Kunden wissen welches System sie haben, schade das Nokia nicht schon bei Symbian darauf gekommen ist.

Einige neue Funktionen  gibt es auch im neuen System, eine interessante Ergänzung ist eine neu hinzugekommene Notification API.

Autor: Karsten Meier

Weil ich gerne Probleme löse bin ich Informatiker geworden. Für meine Kunden berate und konzeptioniere ich und entwickle mit fast allem, was einen Prozessor hat. Sie finden mich auch auf Twitter

Hinterlassen Sie eine Antwort

Pflichtfelder sind mit * markiert.