将JavaFX项目导出到android

时间:2017-06-14 07:22:11

标签: java android javafx javafxports

我在JavaFX制作了一个项目,并希望在Android中运行它。我使用了JavaFXports并生成了所需的apk。我还设法在模拟器上安装apk。但我需要源(源代码)。换句话说,我希望能够在模拟器上运行时调试项目。

1 个答案:

答案 0 :(得分:5)

要调试使用适用于IDE(NetBeans,IntelliJ或Eclipse)的Gluon插件创建的JavaFXPorts / Gluon Mobile,以及已部署到Android模拟器(使用Android Studio),请执行以下步骤:

<强> 1。从IDE创建JavaFX移动应用程序

为此,您可以将Gluon plugin用于IDE。使用其中一个内置模板来创建项目,或者使用众多可用样本中的一个here

我们假设您使用的是单视图项目。提供名称并运行应用

<强> 2。创建apk

运行任务Tasks->Android->Android以创建apk(或在命令行上运行./gradlew android)。

第3。运行模拟器

为此,打开Android Studio,从模板创建一个新的空应用,然后单击运行。它会要求您选择一个设备。然后创建一个新的虚拟设备并使用ARMEABI图像。

armeabi image

虽然这张图片非常非常慢,但x86-64图像无法部署apk(参见INSTALL_FAILED_NO_MATCHING_ABIS error)。因此,如果您无法获得真实设备进行测试,据我所知,这是唯一的解决方案。

如果需要,请下载armeabi图像。一旦你拥有它,启动应用程序将需要很长时间。但只需要模拟器,所以没有必要等待,我们可以关闭模​​拟器,在关闭Android Studio之前,获取图像名称,让我们说Nexus_5_API_23

在命令行上,转到<android sdk>/tools并运行:

./emulator -avd Nexus_5_API_23

它会出现,你会看到类似的东西:

$ ./emulator -avd Nexus_5_API_23
emulator: Listening for console connections on port: 5554
emulator: Serial number of this emulator (for ADB): emulator-5554

<强> 4。部署apk

在命令行上,转到<android sdk>/platform-tools并运行

adb -s emulator-5554 install <path.to>/<your.app>.apk

您可以在/builds/javafxports/android/<your.app>.apk下的项目中找到apk。

$adb -s emulator-5554 install GluonDebugEmulator.apk                                         
[100%] /data/local/tmp/GluonDebugEmulator.apk                                                                                       
    pkg: /data/local/tmp/GluonDebugEmulator.apk
Success

<强> 5。在模拟器上运行apk

<强> 6。打开Android设备监视器

转到<android sdk>/tools并运行monitor。在左侧,您应该看到模拟器设备和进程列表。在那里找到您的应用程序包名称,选择它并查看它用于应用程序的端口(8700)。

monitor

<强> 7。在IDE上附加调试器

最后,返回IDE,在Debug选项下,附加一个调试器,localhost和8700.这适用于NetBeans:

然后单击“确定”。调试过程将开始。

<强> 8。开始调试

在代码中添加断点,例如在按钮事件处理程序中,然后单击模拟器上运行的应用程序中的按钮。你会看到它在断点处停止。

debugging

就是这样。