A very new tool/platform is Codename One which has origins in LWUIT used to provide a contemporary UI on standard Java ME feature phones. Some of the LWUIT team have adapted it to work cross-platform allowing code to be written once in Java and work on iPhone, Android, Blackberry, Windows Phone 7 as well as J2ME devices.
Some features (from their blog)…
- Full access to the underlying OS including embedding native components in place.
- A Swing like API geared for mobile devices with support for IO, GPS, Media/Camera etc.
- Native Themes - Codename One ships with native device themes that are implicitly set to a project to ease the integration with the native OS.
- NetBeans/Eclipse plugins.
- Simulator environment - Codename One provides a fast, easy to use and flexible simulator environment.
- Codename One Designer - cloud service to seamlessly build your applications for free. You can also compile locally and avoid the cloud service entirely but need a Mac for iPhone builds and Windows for RIM/Windows Phone 7 builds.
- Cloud services - Codename One offers cloud services ranging from crash protection to on device debugging and access to web services, push notification and location.
While I haven’t used it yet because it’s still in beta, Codename One seems to have potential. I read in the FAQ that the Java API is CLDC 1.1 which is going to be limiting. I also wonder how the UI will adapt to say iOS vs Android idioms. For example, placement of tabs and rendering of lists which needs to be in native-like ways for an acceptable look and feel. Too many existing tools are encumbered by strange subscription licensing and I like Codename One’s free model. However, I question who will actually fund ongoing development as mobile platform APIs evolve and Codename One needs to keep up to date.
There’s lots more information on the Codename One blog.
- Over The Air and Kirin
- Tips for Assessing App Generators
- Cross Platform Tools
- HTML5 Bits and Pieces
- PhoneGap Build Initial Impressions
- Build PhoneGap via a Web Site
- Web App UI Fragmentation
- The Problems with Frameworks
- Future of LWUIT under Oracle
- WebView Apps and LWUIT
- LWUIT 1.1 for Java ME Developers
- Java ME and Java FX at MoMo London
- LWUIT Now Open Source
- Java ME for Web 2.0 Properties
- Lightweight UI Toolkit for Java ME
- Mobile Sorcery MoSync