是否可以使用JavaFX开发整个应用程序并在iOS,Android或Windows Phone 8上运行它,而无需编写特定于平台的代码?
是否可以使用JavaFX开发整个应用程序并在iOS,Android或Windows Phone 8上运行它,而无需编写特定于平台的代码?
Answers:
Invariant的答案是关于如何开始一切以及2014年初嵌入式和移动JavaFX的状态的好资源。但是,此后发生了很多变化,偶然发现此线程的用户无法获得更新的信息。
我的大部分观点都与Invariant的答案有关,因此我建议先进行研究。
首先有一些坏消息:
现在,一些好消息:
如果您不是DIY类型的用户,我建议您在自己喜欢的IDE上安装IDE插件并开始使用。
是的,您可以在iOS,Android,台式机,RaspberryPI(还没有Windows8移动版)上运行JavaFX应用程序。
工作中:
我们做到了!iPad,Android,Windows和Mac上的JavaFX8多媒体项目!
我的示例JavaFX应用程序在Raspberry Pi上运行
开发资源:
安卓:
iOS:
在10分钟内使用RoboVM + e(fx)剪辑工具开发JavaFX + iOS应用
如果您要开发严肃的应用程序,这里有一些更多信息
其他:
目前,对于JavaFX,Oracle的优先级列表是台式机(Mac,Windows,Linux)和嵌入式(Raspberry Pi,beagle Board等)。对于iOS / android,Oracle作为OpenJFX的一部分完成了这些平台的大部分工作,并选择了javafxports作为OpenJFX的一部分。不是来自ios / android的oracle JVM。社区通过填充ios / android缺少的部分(JVM)将所有东西放在一起,社区在ios(RoboVM) / android(DalvikVM)上运行JavaFX方面取得了良好的进展。如果您愿意,也可以通过赞助来为社区做出贡献(成为RoboVM赞助者)或者开始开发应用程序并报告问题。
编辑2014年6月23日:
Johan Vos 在Mobile和Tablets上为javafx端口JavaFX创建了一个网站,请单击此以获取更新的信息。
Java SE中的 Oracle JavaFX 仅支持OS X(macOS),GNU / Linux和Microsoft Windows。在这些平台上,JavaFX应用程序通常在Java SE或OpenJDK的JVM上运行。
还有一个JavaFXPorts项目,这是一个由第三方赞助的开源项目。它旨在移植JavaFX 库到Android和iOS。
在Android上,该库可以像其他任何Java库一样使用。在JVM字节码编译成字节码的Dalvik。这就是人们所说的“ Android运行Java”的意思。
在iOS上,情况要复杂一些,因为Java SE和OpenJDK都不支持Apple移动设备。直到最近,唯一明智的选择就是为iOS 使用RoboVM提前Java编译器。不幸的是,RoboVM项目在 2015年4月15日被关闭。
一种可能的选择是英特尔的Multi-OS Engine。直到最近,它还是一项专有技术,但是在2016年8月11日,它是开源的。尽管可以使用JavaFXPorts的JavaFX实现来编译iOS JavaFX应用程序,但到目前为止还没有证据。如您所见,情况正在动态变化,并且有望在有新信息时更新此答案。
使用Windows Phone十分简单:不存在任何JavaFX支持。
可能。您也可以参加商业运动。
JavaFXPorts是Gluon维护的开源项目的名称,该项目开发了Java和JavaFX在移动和嵌入式硬件上良好运行所必需的代码。该项目的目标是在可能的情况下(尽可能)向OpenJFX项目做出尽可能多的贡献,以维持实现JavaFXPorts目标所需的最少更改。Gluon提取JavaFXPorts源代码并将其编译为二进制文件,准备部署到iOS,Android和嵌入式硬件上。JavaFXPorts构建可在此网站上免费供所有开发人员使用。