JavaFX8 on iPhone! It works!
Daniel Zwolenski
zonski at gmail.com
Fri Jul 5 05:43:14 PDT 2013
So I take it you guys are talking about a port of jre8 to run directly on both android and iOS hardware/os.
Great. But what are the options for this? We have been focusing on robovm because it was the one that was at a working stage, but robo is based around the android rt. What options/alternatives are you guys proposing for the j8 runtime? What's out there that's working?
On 05/07/2013, at 10:37 PM, Tobi <tobi at ultramixer.com> wrote:
> Mono is not Java and does not need the android java class library...
>
> Von meinem iPhone gesendet
>
> Am 05.07.2013 um 14:37 schrieb Hervé Girod <herve.girod at gmail.com>:
>
>> I'm with Tobias. Android class library has really stalled a lot compared to Java, and it wont improve in the future, and sticking to an outdated class library is not very interesting IMO.
>>
>> Beside we don't specifically need Android class library to compile AOT. Mono work on Android, and it even does not use Android class library.
>>
>> Hervé
>>
>> Sent from my iPhone
>>
>> On 5 juil. 2013, at 13:57, Niklas Therning <niklas at therning.org> wrote:
>>
>>> Even the latest version of Android are missing these classes and Dalvik
>>> (the VM in Android) doesn't support invokedynamic so a backport is
>>> required, not just for RoboVM. I managed to get Ensemble working yesterday
>>> on iOS with the jfx78 sources and RoboVM. But even this backport contains
>>> code which won't work on Android nor on RoboVM. E.g. I had to patch
>>> FontFileWriter to get Ensemble working (it uses java.nio.file.Files which
>>> is a Java7+ class). IMO the backport needs to target Android/RoboVM
>>> specifically and not Java7. A first step would be to make it compile with
>>> Java6.
>>>
>>>
>>> On Fri, Jul 5, 2013 at 1:21 PM, Tobias Bley <tobi at ultramixer.com> wrote:
>>>
>>>> Maybe the missing classes in the android classes used by RoboVM are only
>>>> missing in an old android class library and Oracles android port is based
>>>> on a newer version?
>>>>
>>>>
>>>> Am 05.07.2013 um 13:11 schrieb Daniel Zwolenski <zonski at gmail.com>:
>>>>
>>>>> This is great Tobi, thanks!
>>>>>
>>>>> I'm a bit confused though - seems to be mixed messages on the need for
>>>> the 78 backport?
>>>>>
>>>>> Danno, since Niklas is saying we need the backport, what steps do we
>>>> need to take to get this working?
>>>>>
>>>>> I also don't understand Tobi's comments below about not using the
>>>> android jdk. What is it that's not working, and isn't jfx suppose to run on
>>>> android as well?
>>>>>
>>>>>
>>>>>
>>>>> On 04/07/2013, at 11:53 PM, Tobias Bley <tobi at ultramixer.com> wrote:
>>>>>
>>>>>> I published by blog post about using JavaFX8 and RoboVM to build a iOS
>>>> app: http://blog.software4java.com/?p=41
>>>>>>
>>>>>> @Niklas: IMO it’s important that RoboVM support OpenJDK as alternative
>>>> to the android class library because OpenJFX depends on OpenJDK not on
>>>> Android class library (Apache Harmony).
>>>>>>
>>>>>> Best regards,
>>>>>> Tobi
>>>>>>
>>>>>> Am 04.07.2013 um 14:49 schrieb Niklas Therning <niklas at therning.org>:
>>>>>>
>>>>>>> RoboVM doesn't do invokedynamic so I guess this only works if the app
>>>>>>> doesn't depend on any of the code in JavaFX8 that compiles down to
>>>>>>> invokedynamic calls. Also, there are quite a few API's available in
>>>> Java8
>>>>>>> (and also Java7) that RoboVM doesn't have. We really need to get the
>>>> jfx78
>>>>>>> backport to compile for iOS and generate the static libs properly.
>>>>>>>
>>>>>>> I've just got the font related code in the BrickBreaker sample working
>>>>>>> using the jfx78 backport. There's still a bit of manual command line
>>>> work
>>>>>>> needed to merge the static libraries into universal libraries like the
>>>> old
>>>>>>> ant build system did automatically. But it isn't too hard. I'll try to
>>>> put
>>>>>>> up instructions on the robovm blog later today. I'll let you know.
>>>>>>>
>>>>>>>
>>>>>>> On Thu, Jul 4, 2013 at 1:31 AM, <steve.x.northover at oracle.com> wrote:
>>>>>>>
>>>>>>>> Yes.
>>>>>>>>
>>>>>>>>
>>>>>>>> On 03/07/2013 7:17 PM, Daniel Zwolenski wrote:
>>>>>>>>
>>>>>>>>> Can I just use this: https://jdk8.java.net/**download.html<
>>>> https://jdk8.java.net/download.html>?
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> On Thu, Jul 4, 2013 at 9:15 AM, Daniel Zwolenski <zonski at gmail.com>
>>>>>>>>> wrote:
>>>>>>>>>
>>>>>>>>> Thanks Richard, in the building for Mac section there is a link to
>>>>>>>>>> "Install the latest JDK 8 build" that goes to a dead URL (
>>>>>>>>>> http://jdk8.dev.java.net/). Do you know the correct URL?
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> On Thu, Jul 4, 2013 at 9:11 AM, Richard Bair <
>>>> richard.bair at oracle.com>**
>>>>>>>>>> wrote:
>>>>>>>>>>
>>>>>>>>>> Extensive documentation that is mostly correct:
>>>>>>>>>>>
>>>>>>>>>>> https://wiki.openjdk.java.net/**display/OpenJFX/Building+**OpenJFX
>>>> <https://wiki.openjdk.java.net/display/OpenJFX/Building+OpenJFX>
>>>> https://wiki.openjdk.java.net/**display/OpenJFX/Developing+**OpenJFX<
>>>> https://wiki.openjdk.java.net/display/OpenJFX/Developing+OpenJFX>
>>>>>>>>>>>
>>>>>>>>>>> It is still a work in progress but most things you need to know to
>>>> build
>>>>>>>>>>> is found here.
>>>>>>>>>>>
>>>>>>>>>>> Richard
>>>>>>>>>>>
>>>>>>>>>>> On Jul 3, 2013, at 3:52 PM, Daniel Zwolenski <zonski at gmail.com>
>>>> wrote:
>>>>>>>>>>>
>>>>>>>>>>> Trying to catch up to Tobi on this one so I can have some fun with
>>>> it
>>>>>>>>>>> too.
>>>>>>>>>>>
>>>>>>>>>>>> I assume in order to compile the graphics repo of JFX8 I need an
>>>> OpenJ8
>>>>>>>>>>> JDK
>>>>>>>>>>>
>>>>>>>>>>>> already installed? Are there pre-built bundles for this (for mac)
>>>> or do
>>>>>>>>>>> I
>>>>>>>>>>>
>>>>>>>>>>>> need to checkout and build myself? Does anyone know which repo,
>>>> and
>>>>>>>>>>>> what
>>>>>>>>>>>> command line arg should I use to build J8 in this case?
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> On Thu, Jul 4, 2013 at 6:44 AM, Tobias Bley <tobi at ultramixer.com>
>>>>>>>>>>> wrote:
>>>>>>>>>>>
>>>>>>>>>>>> Hi Guys,
>>>>>>>>>>>>>
>>>>>>>>>>>>> I used RoboVM 0.0.2 and the current OpenJFX8 from mercurial
>>>> graphics
>>>>>>>>>>>>> branch.... So no 78 backport. I will write a blog post on
>>>>>>>>>>>>> blog.software4java.com until tomorrow...
>>>>>>>>>>>>>
>>>>>>>>>>>>> Currently the performance is very limited - as Richard told too.
>>>> I’m
>>>>>>>>>>>>> testing now all the basic JFX controls (like button, RadioButton,
>>>>>>>>>>>> CheckBox,
>>>>>>>>>>>
>>>>>>>>>>>> ListView, TableView, ...).
>>>>>>>>>>>>>
>>>>>>>>>>>>> Best regards,
>>>>>>>>>>>>> Tobi
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> Am 03.07.2013 um 21:47 schrieb Daniel Zwolenski <
>>>> zonski at gmail.com>:
>>>>>>>>>>>>>
>>>>>>>>>>>>> Tobi, this is awesome! But you've left us hanging :)
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Did you use the 78 backport for this or just straight out J8?
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> What are the steps to reproduce your working build?
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Very darn exciting!
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> On 04/07/2013, at 2:50 AM, Danno Ferrin <
>>>> danno.ferrin at shemnon.com>
>>>>>>>>>>>>> wrote:
>>>>>>>>>>>>>
>>>>>>>>>>>>>> JavaFX 8? Does RoboVM support invokedynamic? That is a big
>>>> deal if
>>>>>>>>>>>>>> so.
>>>>>>>>>>>
>>>>>>>>>>>> On Wed, Jul 3, 2013 at 10:07 AM, Niklas Therning <
>>>>>>>>>>>>>> niklas at therning.org
>>>>>>>>>>>
>>>>>>>>>>>> wrote:
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Awesome! Can you please post the build instructions somewhere?
>>>> I'm
>>>>>>>>>>>>>>> not
>>>>>>>>>>>
>>>>>>>>>>>> getting a long with gradle at all. :-(
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> On Wed, Jul 3, 2013 at 6:03 PM, Tobi <tobi at ultramixer.com>
>>>> wrote:
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> It works! Latest JavaFX 8 (gradle based) with RoboVM on a real
>>>>>>>>>>>>>>>> iPhone
>>>>>>>>>>>
>>>>>>>>>>>> with
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> native text rendering and JFX CSS rendering!
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> Tobi
>>>>
>>>>
More information about the openjfx-dev
mailing list