JAVAFX on ANDROID

Richard Bair richard.bair at oracle.com
Fri Oct 11 09:53:32 PDT 2013


As frustrating as it is, the fact is that today Oracle has no announced plans to release any official JVM for Android and iOS. That being the case, the biggest hurdle to getting FX on iOS and Android is the VM. On the iOS side there has been some success with RoboVM. On Android you can just use Dalvik if you back port to Java 6, or you have to find another VM (XMLVM maybe?? Anybody convince Excelsior to support Android?) that can do the job.

There are two parts the problem of a "VM". One is the VM technology itself, which is probably the lesser of the two issues because there are a handful of decent VMs around (if you include Dalvik, you've already got one on Android). The second problem are the class libraries. Generally JavaFX doesn't rely on too much from JavaSE beyond what is in the "base" module; threading and collections and concurrency and so forth. However we are using the diamond operator and in a few places we might use multi-catch (although I don't know of such places myself) and definitely we use default methods in interfaces in one location (ObservableList). Generally we've tried to make it easy to back port to 7, but haven't tried to keep 6 up to date. I would be very interested in the list of code changes Matthias had to make to better understand the situation.

As far as fonts (from Matthias' email) I believe the Android port currently uses T2K but Felipe and Tomas were talking about using the new Font support which would delegate directly to Android APIs. This might be one area that Matthias' and Felipe and Tomas can work closely on to get a contribution to make this happen!

> How much time do you think it would take community designers to develop this?

RoboVM for iOS I think is basically at this stage, where they've got something up and running to the point of being able to do performance analysis and looking for bugs. It has been a several month process with stops and starts. Tom and the others working on RoboVM might be able to give a better estimate.

> Does it support swing and javafx or just javafx like the Pi port? What parts of java8 don't work on your standalone VM?

I couldn't tell you what does / doesn't work on the standalone VM as that would break all kinds of confidential legal mumbo-jumbo. But I can tell you I've never seen a port of AWT to iOS or Android.

Richard

> -----Original Message-----
> From: Tomas Brandalik <tomas.brandalik at oracle.com>
> Sender: openjfx-dev-bounces at openjdk.java.net
> Date: Fri, 11 Oct 2013 06:52:06 
> To: <openjfx-dev at openjdk.java.net>
> Subject: Re: JAVAFX on ANDROID
> 
> COMPILE_TARGETS=android
> Good, then use FX78 and you can give it a try. I have my local fork of 
> javafx for testing DalvikLauncher. Standalone Vm for Android is not 
> available for download.
> 
> -Tomas
> 
>> FX78 should be compatible with Java6 because RoboVM is built on dalvik
>> classlib and JavaFX works there!
>> 
>> Tom
>> 
>> On 10.10.13 22:42, Tobi wrote:
>>> Hi Tomas,
>>> 
>>> How did you test the Dalviklauncher? Do you have a Java6 compatible jFX version?
>>> 
>>> And how did you test the JavaSELauncher? Do you have a JVM for android? Where can we download it?
>>> 
>>>> Am 10.10.2013 um 22:01 schrieb Tomas Brandalik<tomas.brandalik at oracle.com>:
>>>> 
>>>> Hi Tobi and Philippe,
>>>> Android port is being developed in open source so all developers can see every progress. There is nothing to hide. You can understand it as an example of porting javafx runtime to a linux based platform not a product with a roadmap.
>>>> As you've noticed there are 2 launchers DalvikLauncher and JavaSELauncher. Have a look at DalvikLauncher it is quite simple how it launches an application. What you need to try it out is an java6 (dalvik vm limitation)  compatible javafx fork.
>>>> On the other hand JavaSELauncher uses standalone vm which is not part of the port. It expects that the vm is packaged with an apk. The launcher unpacks vm, installs it, setup classpath, main class debug port etc (all specified in manifest) and launches it . These are the 2 options which can be further extended by the community.
>>>> 
>>>> best regards
>>>> -Tomas
>>>> 
>>>>> On 10/10/2013 06:10 PM, Tobias Bley wrote:
>>>>> Tomas from Oracle is working on the Android port of JavaFX. He has developed a DalvikLauncher and a JavaSELauncher. So he is able to tell you (and me :)) more about that important theme „JavaFX on Android“.
>>>>> 
>>>>> Best regards,
>>>>> Tobi
>>>>> 
>>>>> 
>>>>>> Am 10.10.2013 um 16:55 schrieb Philippe TIFFEAU<philippe.tiffeau at steria.com>:
>>>>>> 
>>>>>> Hello,
>>>>>> 
>>>>>> Someone can make a clear answer about JavaFX on ANDROID ?
>>>>>> 
>>>>>> If it works how to use ? Otherwise the roadmap is ....
>>>>>> 
>>>>>> Best Regard.
>>>>>> 
>>>>>> This email and any attachments may contain confidential information and intellectual property (including copyright material). It is only for the use of the addressee(s) in accordance with any instructions contained within it. If you are not the addressee, you are prohibited from copying, forwarding, disclosing, saving or otherwise using it in any way. If you receive this email in error, please immediately advise the sender and delete it. Steria may monitor the content of emails within its network to ensure compliance with its policies and procedures. Emails are susceptible to alteration and their integrity (including origin) cannot be assured. Steria shall not be liable for any modification to a message, or for messages falsely sent.
> 



More information about the openjfx-dev mailing list