Let’s Talk About Java CDC One More Time… …native compiling for MIDP3
Ok, do you remember my original post about the the lack of Java on major smartphone platforms? Well, here’s an updated list of the major smartphones today:
- iPhone 3GS
- Motorola Droid
- Palm Pre
- Nokia N97
- Nokia 5300/5800
- Blackberry Storm 2
- HTC Hero
- Nokia N900
Now Alex pointed to the updated spec docs for the N97, which *now* show that the device runs Java ME CLDC. Please note that those spec docs for that device have historically shown that the N97 was supposed to run a JDK 1.4 JVM, but Nokia decided to update the docs. Thanks for informing me about that Alex.
Additionally, Chris pointed out the Java ME CDC is still alive on the Sprint Titan platform. Thanks Chris!
However, I still make the case that Java ME CDC (the most powerful and capable mobile Java platform) is NOT on any of the devices that are listed above. Sun will have to do something quickly in order to make Java relevant on mobile devices again. Did you know that by the end of 2010, Flash applications will be on all of the devices listed above?
Here’s what Sun needs to do for MIDP 3.0 to launch it as the best mobile application framework.
1. Enable MIDP3.0 application code to natively compile to iPhone 3GS runtimes
2. Enable MIDP3.o application code to natively compile to Android 2.0 runtimes
3. Enable MIDP3.0 application code to natively compile to Palm Pre runtimes
This will enable the millions of Java developers to create mobile phone applications for the RELEVANT mobile platforms. I’m sorry to say that Java ME CDC is obsolete for mobile smartphones, and if Sun doesn’t do something quickly, MIDP 3.0 will be obsolete within 6 months (even before the spec is finalized).
November 29th, 2009 at 23:55
Java ME CDC isn’t even alive with the Sprint Titan Platform, which was quietly “disappeared” by Sprint just before their October developer conference. Here’s what the Sprint execs at the conference had to say when I asked about it: http://www.pikesoft.com/blog/index.php?itemid=258
November 30th, 2009 at 06:34
Hi Bruce, You mentioned at #6 the Blackberry Storm2. Why? Is this based on MIDP3.0 support or JavaME in general. If JavaME then I’m a bit confused as my understanding is Blackberry’s all support Midlets and “BB Applications” which are really just CLDC apps with the BB UI and extended APIs, but still Java.
I’m currently working on a Storm2 deploying an app, and in the 5.0 JDE there is midlet support. Just want to make sure I’m not going to get the rug pulled out of the project. :)
But your statements on ME I couldn’t agree with you more about. Something needs to get going on JavaME with smartphones. In mobile development warfare the ME world is kinda fighting with sticks and rocks compared to B1 and Stealth fighters everyone else has now.
-Shawn
November 30th, 2009 at 10:43
Hi
This is such an important post and should be made public to all and everybody because this is a very good point. I am watching CDC going down for years now without even really getting started. And now, with iPhone, Android und Palm on the market, which do not even support CLDC anymore the lifetime of MIDP overall seems to end, even with 3.0 not even really being there.
Nevertheless, your three points of basically cross-compilation seem OK but I do not totally agree with them. Of course, it would be nice to them being cross-compiled natively to the different phones, but that could be more complicated than trying to really get their space in their. For example, it would be nice to see 3.0 going directly into the Android SDK. But overall your are right, Sun definitely has to do something, has to get in there, the one way or another.
November 30th, 2009 at 12:21
and also Enable MIDP3.0 application code to natively compile to Maemo runtimes
November 30th, 2009 at 16:52
@David,
Ugh. And I had such high hopes for the Titan platform, especially since it used OSGi. It looks like Sprint is committed WebOS, Android, and Blackberry. Thanks David!
November 30th, 2009 at 19:38
@Shawn,
Hey Shawn, nice to hear from you again. Thanks to Verizon, the Storm 2 will probably be a moderate success, although it’s going to have an uphill battle against the iPhone because I’ve never seen a business person on the street with a Storm.
Now, to address your question specifically. Yes, the Blackberry OS has excellent support for Java CLDC and MIDP 2.1. It also has alot of support for a slew of JSRs which makes Blackberry a haven for Java ME developers. My concern is that RIM has no implementation for Java ME CDC, which is the middle-ground Java implementation between CLDC and Java SE. Java ME CDC *was* supposed to be a JVM platform for both high-end mobile phones and set-top boxes, but it never succeeded as a commercially available JVM platform for phones.
November 30th, 2009 at 23:44
@NeA,
Hey, I agree with you agreeing with me. Native compiling MIDP 3.0 source to Andorid should be the easiest thing to do since they both use Java syntax. Sun had better do something quickly before Flash takes over as the best cross-platform solution for mobile devices.