This on iOS, still no story on Windows Phone, which actually happens to be over iOS on some European countries.
The big question is iOS for which there is no mature tool yet. hopefully j2objc will be enough.
Windows phone ...i think that we will wait to see a higher market share before to dig into it
Java 6! Java 7 is only fully available for 4.4 upwards, and only the language, with cherry updates for the library.
Meanwhile one needs to resort to Xtend and Scala, if I want to enjoy a bit of Java 8 on Android, across versions. Or use hacks like retrolambda.
On Windows Phone vs iOS, it depends on your target market. On countries like mine (Portugal) you will surely see more WP on the street.
Of course, US and others are a different matter.
You should really read about the Blub Paradox. Imagine writing all your coded in assembly. It would suck because assembly is an inferior language To those you mention. Now imagine working in a language that is higher level than what you've (yet) been exposed To.
Unless you want it to look totally native client-side. The extra effort required to make a Java app look platform native is something that (near as I can tell) no one has ever attempted.
Windows: http://www.solaraccounts.co.uk/images/screenshots/invoices.j...
OS X: http://www.solaraccounts.co.uk/images/screenshots/invoices_m...
The trick is to use the Java SWT library rather than Swing. (In my case I also added a few platform-specific hacks such as having a big toolbar at the top of the main window in OS X but not Windows).
You can make the apps look native, if you really care. But in an era when web apps are the shizzle why would you even care? No web app even tries to look native. They just do their own thing and nobody cares.
Because they require the use of Apple's hand-rolled Java 1.6
https://youtrack.jetbrains.com/issue/IDEA-117324#comment=27-...
You are pinioned by this choice on some practical levels. Mainly, some users and use cases demand the speed and lightweight user-experience of native apps. The native-vs-[java] experience is typically quite noticeable on all the platforms you've mentioned -- desktop, web, and mobile.
-Java for windows desktop (there are pretty installers which automatically download and install the JRE if not present)
-Java for MAC and Linux desktop (same as for windows desktop. the same installer tools can generate also Linux and MAC packages)
-Java for Android (with a very minor conversion for which we already wrote a converter app)
-Java for Web (currently using a java Applet which works perfectly. We plan to use GWT to transform to JavaScript in the future)
-Java for iOS (will see)
This way we plan to cover 99% of all devices with java only (with some minor transformation for some platforms). What is your opinion on this? I am in the right direction?