• Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

Java ME & iOS

 
Kolina Miouri
Greenhorn
Posts: 7
Java Java ME Opera
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi
Is there any way to run Java ME applications on iOS ( Apple products like iPad , iPod , iPhone ) ??
Thanks
 
Ulf Dittmer
Rancher
Posts: 42968
73
  • Likes 1
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
No. The probability of Java ever running on iOS are just about zero.
 
Kolina Miouri
Greenhorn
Posts: 7
Java Java ME Opera
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I heard somethings about a tool called XMLVM . What is that ??
 
Ulf Dittmer
Rancher
Posts: 42968
73
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
What did you learn during your web search for that term?
 
Kolina Miouri
Greenhorn
Posts: 7
Java Java ME Opera
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I read this on Internet :

" It looks like you write your code in Java, then use the Javac compiler (or another Java compiler) to compile the code down to Java byte code (.class files).
You then run these class files through the XMLVM cross compiler to generate the compiled objective C code that can run on iPhones "
 
Ulf Dittmer
Rancher
Posts: 42968
73
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
So you didn't actually search for the term "XMLVM"? Why not?
 
Kolina Miouri
Greenhorn
Posts: 7
Java Java ME Opera
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
In the site for XMLVM ( www.xmlvm.org ) is said that :

" The goal of XMLVM is to offer a flexible and extensible cross-compiler toolchain. Instead of cross-compiling on a source code level, XMLVM cross-compiles byte code instructions from Sun Microsystem's virtual machine and Microsoft's Common Language Runtime. The benefit of this approach is that byte code instructions are easier to cross-compile and the difficult parsing of a high-level programming language is left to a regular compiler. In XMLVM, byte code-based programs are represented as XML documents. This allows manipulation and translation of XMLVM-based programs using advanced XML technologies such as XSLT, XQuery, and XPath "

But I am a newbie
 
Ulf Dittmer
Rancher
Posts: 42968
73
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Note that it does not mention JME at all, just "Java bytecode". There seem to be some Android->iPhone conversion tools and libraries, but it looks like those do not support sizable portions of the Android API.
 
Mark Spritzler
ranger
Sheriff
Posts: 17278
6
IntelliJ IDE Mac Spring
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
The other thing it says it that it converts it to Microsoft's CLR code, nothing about iPhones. Microsoft doesn't make the iPhone. ;)

Mark
 
Ulf Dittmer
Rancher
Posts: 42968
73
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Mark Spritzler wrote:The other thing it says it that it converts it to Microsoft's CLR code, nothing about iPhones.

I interpret the sentence to mean that it converts CLR bytecodes as well as JVM bytecodes. The next paragraph on the web site seems to bear this out. There you'll also see that the iPhone (via Objective-C) is indeed a target.
 
Tim Holloway
Saloon Keeper
Pie
Posts: 18277
56
Android Eclipse IDE Linux
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Please note that being able to cross-compile is only part of the story. Before Oracle got all snotty, I would have simply stated that both J2ME and Android were Java. Now, thanks to the lawyers I have distinguish the "Java" on Android as Dalvik.

But regardless, you can't recompile an Android Dalvik program under the J2ME Java compiler and expect it to run under J2ME. The source code may be compatible, and you may be producing acceptable J2ME bytecodes instead of Dalvik code, but the underlying OS's are so radically different that it won't even begin to function.
 
Hussein Baghdadi
clojure forum advocate
Bartender
Posts: 3479
Clojure Mac Objective C
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
If you want to do iOS development, pay yourself a favor in stick with Apple's stack of supported technologies.
If you know Java you will be surprised how productive you are in Objective-C.
 
David La Motta
Greenhorn
Posts: 4
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
No, unless iOS gets official support for a JVM. You can, however, use GWT4Titanium-Mobile (http://www.emitrom.com/gwt4timobile) and make an attempt to port the J2ME app to iOS. With GWT4Ti-Mobile you write your iOS app in Java, and ultimately it gets translated to native code. There are more details and tutorials at the URL mentioned before. The community is pretty active, so you're bound to get any help you may need to get this going.
 
Ulf Dittmer
Rancher
Posts: 42968
73
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
In the interest of full disclosure it needs to be said that David la Motta's email address makes it seem that he's at least affiliated with the product he links to.

@David: If that's the case, you should put something to that effect in your signature, lest it appears that you're giving impartial advice.
 
David La Motta
Greenhorn
Posts: 4
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
@Ulf No intent in hiding anything, just a simple oversight to having a blank sig. Thanks for pointing it out.
 
Lehel Sipos
Greenhorn
Posts: 5
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Maybe you would like to try:
http://www.m-gwt.com/

Developing mobile applications with GWT and mgwt.

mgwt works on all kind of mobile devices that support webkit (like iPhone, iPad, iPod, Android, Blackberry, ...)

Best regards,
Lehel
 
David La Motta
Greenhorn
Posts: 4
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
We (Emitrom) just announced Lienzo, which allows your mobile app to work on all devices that support canvas. Web-kit's fragmentation has been a major pain point, and now with Lienzo that pain-point is gone. Lienzo bears an Apache 2 license, so it is gratis.

Lienzo is a pure GWT implementation of canvas. Pair it with our Cordova binding and you can develop canvas-based mobile apps; then turn around and deploy it using Air4j and your app is now a desktop-based app; or run it on the web, out of App Engine like our examples do.

We are in alpha right now; working hard to get more features in. With Lienzo, your imagination is the limit.

http://www.dzone.com/links/javas_future_lays_in_lienzo.html

Full disclosure: I'm co-founder @ Emitrom.
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic