Sun prepping Java for iPhone: your craplet investment is safe
We're sure there have been some really great Java Micro Edition apps developed over the years, we just haven't been fortunate enough to find any that aren't a Bejeweled variant run into many of them. But that could very well change with the news that Sun is using that fancy new SDK to develop a Java Virtual Machine for the iPhone, which it expects to have ready "some time after June," and which will allow iPhone users access to the vast libraries of existing JME apps. We suppose the real conundrum now is which Java ME app we'll grab first: Harry Potter, or MapQuest Mobile. These choices, they overwhelm us.
[Via Mac Rumors]
[Via Mac Rumors]



















I hate mobile phone games.
Unless it's Snake.
Snake is the best phone game. Others try too hard and look out of place.
They're not talking about mobile phone games, they are talking about Java games like Tomb Raider. Sure, Tetris and poker are cool too, but the idea of Harry Potter, Rainbow Six, and Tomb Raider on the iPhones are another matter.
Then consider the fact that SEGA and EA are on board...Madden '09 Mobile anyone?
Uh... what about Bubble Breaker? That is way better than Snake.
+1 on the bubble breaker! My wife had that on a winmo smartphone and it was the only thing i liked about it.
Yeah snake IS the best mobile phone EVER! I wouldn't want Java on the iPhone, it's gonna populate the iPhone with un-maclike applications that are crap!
@Ryan
Trying to show your fanboy funny, eh?
Cubswillwin, aren't you the one who posts to himself 8 times in an article with different avatars? So, let's just say your maturity isn't gonna be measured in AU.
If you care to know, I don't really mind WinMo as an OS. I like what it's trying to do, and on a fair piece of hardware I think it would really work. My beef with my wife's Smartphone was that it was a piece of crap. It was the HTC Faraday (Cingular 2125) and it blew hard. The joystick was impossible to use and its 5-way mechanism CONSTANTLY MISREAD what you were trying to do. It was beyond useless. My friend's Q, on the other hand was a NICE piece of kit. That I could get used to, except the screen was a bit small.
Honestly, if the Tilt or Touch could've been thinner, they would've been more serious contenders for my smartphone affection.
Now if anyone's actually reading this, watch very closely.
I'm going to invalidate this entire post.
Apple.
^Ph4nb0i!!!!!!!!!!!!!!!!!
hey, hey. No need to get sensitive. Just kidding. If you also care to know, your thoughts pretty much are the exact same as mine.
and what's AU? Australia?
gold
I like the word craplet... fantastic
swing and a miss
Heh, Swing, I get it.
Oh wait, am I too much of a geek for Engadget?
That didn't fly past me either. Maybe I should also stop reading...
Games maybe not. But the addition of Java on the iPhone, if it can be integrated with Safari, would be another great building block to making this a phone that even Apple haters would have to take a second look at.
Apple hasn't released any way of writing plugins for the iPhone.
Only stand alone applications.
Also this whole thing sounds bogus unless Sun has a deal with Apple to do it. The SDK clearly states
"An Application may not itself install or launch other executable code by any means, including without limitation through the use of a plug-in architecture, calling other frameworks, other APIs or otherwise."
It sounds like java violates the guides lines and there's no way Apple would sell something that could then eat into the sales of their own apps.
Great. My £60 phone has Java as stranded.
Finally I can put Opera Mini on my iphone.
oh wait
I don't see a point to adding J2ME. There aren't enough applets to make it worthwhile, ON TOP OF THE FACT THAT everybody and there puppy dog is going to bring better versions natively to the iPhone. I'm sure Opera will port Opera Mobile. AOL has AIM coming natively. You know Yahoo and Microsoft will bring Yahoo/MSN Messengers, natively. RSS is native in Safari. The only reason would be for games, but even then you know games, games and more games will be ported natively. Tetris, Solitare, Pinball! Audible uses J2ME, but there's no point because the iPod/Phone already support Audible natively! I just don't see the point....
Sun's just doing this to keep J2ME alive!
true fanboys might not like this idea, but: isn't the point, very obviously, to get around apple's air-tight control of native apps? if you get java on there, people could potentially develop and add whatever apps they want, without the blessing of the itunes app store. java is no joke--remember that hymn was a java applet.
heaven forbid a bunch of apps suddenly become available for the iPhone, amirite?!
I wouldn't mind some of that server side compression Opera Mini offers. I'm on EvDO and it's still a lot faster to run Omini than my native browsers such as pocket Internet Explorer.
Keep J2ME alive?!! lol - your kidding right?
JavaME is on > 8 out of 10 handsets worldwide and growing.
I agree native apps should perform better and have better integration, but that costs $$$ and also is 'harder' to program lending itself to more bugs and other issues.
We should also consider marketshare too - the iPhone is only a small fish right now- do you want you business to employ iPhone, Symbian, Java and M$ developers just for your Tetris application?
"Sun's just doing this to keep J2ME alive!"
Hardly. J2ME is the closest thing that handhelds have to a lingua franca, roughly 8 of 10 devices supports it.
While a native program usually is better, you are looking at porting to 6-7 different platforms to get the same coverage as you get with J2ME. So unless you need access to native APIs, writing "craplets" is the best option.
For stuff like Opera Mini, Gmail or my local broadcaster's mobile teletext app J2ME makes perfect sense.
People assume that with Java on the phone that you can bypass the device's security. Au contraire. Any J2ME app would have to get permission from the runtime to do anything, be it load or save files, access the internet, take a picture etc. So Apple can lock down the impl as much as they like just by denying or putting restrictions on what Java apps can do.
It might play Harry Potter, but will it play Doom?
How do you know there's a Harry Potter game coming for this Java virtual machine? Because I don't want to get my hopes up.
Harry bloody Potter...
AGG!!
I'm Tired of the iPhone stuff!
http://msmobiles.com/
Knock yourself out.
I Blizzard jumps in and makes a ME version of WoW (even if it's just a very limited app--chat, check mailbox, etc) it will move 500,000 iPhones just by itself.
I'll keep it short...
I agree 'Applets' have had a bad reputation, and maybe there aren't lots of amazing JavaME apps that you use - I use GMail, Google Maps and my satellite provider also provides a mobile-recording facility for my TV at home.
JavaME has become fairly powerful when talking about native integration with the release of Mobile Services Architecture specification, supporting h/w 3D graphics, web services, GPS, Bluetooth etc.etc.. There is not much you cannot do now, so if the apps are not there it's more about education than a technology issue.
The advantage of having the Java Platform on the iPhone is that it opens-up a single platform across many devices, reducing the development time & costs, and opens up 'simple' development platform for the wider community.
Ah yes, the old Java is platform agnostic argument. Because soooo many people are running OSes other than the big guns.
Java is as dead as Pauly Shore's career.
Riiiiiiight... because people are going to develop apps for the 1 bajillion different phone OS's out there. Remember, it's not just smartphones, regular phones support J2ME too (except Alltel and Verizon)
YouFaceTheTick
That's right my man. Thank you for supporting me and my ideology and narrow view of what makes Java good.
theYear1999
But the real question is, does it include signature features such as horrid performance and loading screens?
I disagree, the real question is... will it blend?
Bravo, Engadget, for calling this one exactly as it is. J2ME has been on phones for years and years (especially on BlackBerries!), and yet I can't name one killer app that uses it yet. Sure, the various Google applications on my BlackBerry are cool, but the iPhone-optimized web equivalents are already better, to say nothing of what will surely come out of programs written for the native API.
"Craplets" accurately describes it. Good of Engadget to call a spade a spade, in this case.
can your iPhone-optimized web equivalents conjure the lumos spell? DIDN'T THINK SO.
He looks too happy in that photo; if you hadn't have beat me to it I would have knocked him down too.
Two words my friend:
Opera Mini
Seriously, that has been the most useful app in the world for me. Best of all, no matter how cheap the phone is, it always runs the same. Every time. Consistently. Let's see my phone try to load one of your iPhone optimized web pages. My phone doesn't need optimized, i can see all 200 KB of beautiful webpage right on my basic phone.
For free.
Food for thought
If the iPhone offer the "real internet" experience, why does it need an iPhone-optimized websites/services (Youtube and etc)? Also does the "real internet" include Flash/Java?
awesome! 20th century programming comes home to the iPhone. Damn, now I'm gonna get me some 2000-era crappy programs.
Java program running some sorry games is not a big deal for the iPhone. They need to focus on B2B benefits, speed up the internet and make the email better. http://hotcookies.net
This is somewhat off the topic here. But what is the deal Engadget!! Ever since the iPhone released, after each time of clicking next page, there it is, "the iPhone!" At least two topics of it per page. I am not a hater on the phone and as well as the website itself. As a matter fact the site is great. But is this getting a little out of hand here??
Apple approached engadget awhile ago and offered them free macs for all the staff, every year for life as long as they spammed the site with apples every thought, gesture and action.
Funny they neglected to report about the SDK's major shortcoming, the fact you can only run one 3rd party app at a time. Seems the iPhone's wonderful UI is such a resource hog, it cant handle multitasking very well. So you will have to quit out of your 3rd party apps to do anything else at the same time. Quit out, not switch between-they can't be run in the background. Seems the iPhone is still 5 years behind the times. But it sure has a purty UI, perfect for those folks who find other phones too hard to use.
@Joppa: multi-tasking and memory management issues are probably on-going development issues that will certainly improve with time and software/firmware upgrades.
Don't crow too soon!
Since it's pretty much a hardware & an "Apple doesn't trust it's customers to be smart enough to manage their own memory" I seriously doubt it. Keep wishing and waiting, though!
@Joppa: Also interesting that you failed to notice the slew of articles across the web which are detailing just how easy it is to get around that limitation (and yes, it's a limitation of the SDK, not of the hardware).
I have been an avid iPod Touch user for several months now and eagerly await the java apps, and, furthermore, was this not Java's original raison d'etre?
Programming and running portable gadgets, from toasters to cell phones?
I will joyfully browse the JME inventory and pick and choose first, the fun ones, second, the useful ones. Then, I guess I could dust off my Java-programming skills and try my hand at developing an app or two myself.
Let us browse the catalog! :)
Peter J. Lupo Esq.
antiaging4geeks.com
I just hope apple doesn't force us to pay for something that should have been there from the beginning. Well....he'll probably make it free for the iphone but not for the touch.
Hey, hey, hey, lets not forget vNes, java NES emulator.
How can Engadget run this article?
Any tech-savvy person should know better than to dismiss the universality of Java, no matter how archaic it seems.
Shame on you, Mr. Miller.
Can't believe the Jesus phone did not have a JVM! So for June we need a JVM, 3G, HSDPA, A2DP, aGPS, replaceable battery, video recording support, etc
IMHO, while the native usability, games and other apps will obviously beat any JME equivalents hands-down for speed and integration with the iPhone, the latter may well benefit those with a must-have app not catered for by the developer community that's just starting off, and help them port their favourite game or obscure app over to the iPhone.
That can only help both parties, i.e. satisfy users and sell more iPhones. Win-Win!!
Sure, why use native apps when you can use an extremely slow and resource hungry platform?
At my current job, I rewrote an application that ran on various mobile devices that tracked items being received at various facilities at my company. The app was previously written in native code to run on one type of device. I wrote this new app in JME. It was faster and looked better than the native version that predated it. Just because you have people writing native apps doesn't mean that they are better because they are native. The skill of the engineer behind it has a much larger effect in todays world than the technology used to build it.
screw java ... has Apple ever heard of FLASH? Only like half the internet uses it.
The "real internet on your phone" ??? All the really broken flash applets on my phone.
just imagine how these would sell if they made world of warcraft for it
I hate that game...
One commenter made the observation that J2ME apps run on BlackBerry devices, but they fail to make the obvious conclusion: *All* BackBerry apps, including those written by RIM, are in J2ME. This could serve as a nice springboard to see BBConnect on the iPhone. Now that would be something "worth keeping J2Me alive".
the iphone may turn out to be useful after all, but the fact it needs a special jvm scares me.
what about ipod touch?
I don't want Java, I want FLASH!!!!!!!!!!!
... you know, except that the license agreement explicitly states that you may not write a virtual machine/code loading environment for the iPhone that allows execution of downloaded code (think midlets). See http://blog.mozilla.com/rob-sayre/2008/03/06/apple-bans-firefox-spidermonkey-lisp-lua-ruby-python-rhino-java-opera-gcc/ (the author misses the fact that it only applies to downloaded code, but the excerpt is correct.)
Phones are for calling people. Other human beings. Like there aren't enough handheld video games in the world to keep anyone from ever making eye contact already? If you need network apps and tools, get a laptop. Step one is buying the most expensive phone to say "I'm rich," and it's in the same category as rims or a stereo for your car. Step two is using that device all the time as a place to bury your nose and retreat from the rest of the world with all the crappy little tv shows and stupid twitch arcade you can get at five bucks a pop. Suddenly you're incapable of having a real conversation. So what was the point of spending $500 of a freakin' phone when you could get one and be unable to hold a conversation on it for free?
From someone who has to be online 12 hours a day -- people, wake the hell up! Go out and TALK to a stranger. Platform independent code is great. If only more people developed meaningful apps instead of a million more craplets to waste everyone's time. A meaningful app -- at least the way it used to be defined -- was something that actually helps you spend LESS time on your phone, LESS time screwing with machines, and MORE time enjoying the world and the people around you. Oh yeah, that was before the end became the means and the process became the profit. Just waitin' for the next meltdown, now. Looks a lot like 1998 to me.