javafx应用_使用JavaFX构建和部署Android应用

javafx应用

Java平台的最初目标是为嵌入式设备提供软件环境。 但是,历史上一个奇怪的循环使Java成为企业软件的第一开发语言。 与利润丰厚的服务器市场相比,客户端上的Java受到的关注较少。 有了JavaFX,Java平台现在具有强大的客户端组件,可用于开发台式机,平板电脑,移动和嵌入式系统的应用程序。 在本文中,我们将展示如何在Android设备上部署JavaFX应用程序。

任何用于客户端开发的软件平台都必须提供一种创建用户界面的方法。 对于Java平台,AWT(抽象窗口工具包)已成为创建用户界面的基础。 许多更高级的工具包(例如Swing)至少部分基于AWT。 自1995年以来,AWT就已经成为Java平台的一部分,因此它的设计原则已经过时,与当今的硬件和软件功能不符。

新的Java客户端组件JavaFX是从头开始设计的,同时考虑了Java世界以及其他UI框架的经验。 JavaFX的主要原则之一是尽可能地利用硬件(例如GPU)。 确实,当今用户界面的需求是高响应性和高性能的工具包。

JavaFX是Java SE环境的组成部分,它是官方的“客户端Java”组件。 它与受支持系统上的JDK和JRE捆绑在一起。 因此,Oracle在Windows,MacOS X,Linux和嵌入式ARM系统上将JavaFX作为Java SE发行版的一部分提供。 在iOS或Android上没有JavaFX的官方Oracle发行版。 足够好,社区正在填补这一空白。 RoboVM团队在RoboVM上增加了对JavaFX的支持,这使得使用RoboVM编译器编译JavaFX应用程序并在iOS设备上运行它们成为可能。

在iOS和Android上提供JavaFX非常重要。 今天,我们看到越来越多的应用程序不仅需要在台式机上可用,而且还需要在移动设备和平板电脑上可用。 用三种语言编写同一应用程序的三个版本非常昂贵:一种用于桌面应用程序,一种用于iOS,一种用于Android。 使用JavaFX,可以在所有这些平台上部署相同的应用程序。 当然,每个平台都有其自己的UI特性,需要遵循,但JavaFX平台提供了多种方法来实现这一目标,包括CSS和自定义外观的使用。

在本文的后面,我们将重点介绍能够在iOS和Android上运行JavaFX应用程序的另一个重要原因。 但是首先,我们将展示如何在Android平台上运行现有的JavaFX应用程序。

Android上的JavaFX

本文的其余部分是关于在Android上部署JavaFX应用程序的。 可以在JavaFX移植团队网站上找到有关如何在Android上编译,打包和部署JavaFX应用程序的详细说明。

通常,必须执行以下步骤:

  1. 下载Android SDK和JavaFX-Android SDK
  2. 创建您的JavaFX应用程序
  3. 使用JavaFX-Android SDK根据您的JavaFX应用程序创建一个Android项目
  4. 使用Ant构建系统创建Android软件包
  5. 上载到App Store

步骤1.下载Android SDK和JavaFX-Android SDK

为了编译和构建您的应用程序,您需要安装Android SDK和JavaFX-Android SDK。

  • 1
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
JavaFX提供了许多GUI组件,如Button、TextField、Label等。对于这些组件的自动化测试,可以使用JavaFX自带的测试工具,即TestFX。 TestFX是一个开源的JavaFX GUI测试框架,它提供了一系列API和工具,可以方便地测试各种JavaFX应用程序的GUI组件和交互行为。 使用TestFX进行自动化测试,需要编写一些测试用例代码,其中包括以下内容: 1. 导入TestFX相关的依赖库 2. 创建JavaFX应用程序场景(Scene)对象 3. 使用TestFX提供的API查找和操作GUI组件 4. 编写测试用例代码,验证应用程序的行为和功能 下面是一个简单的TestFX测试用例的示例代码: ```java import org.junit.jupiter.api.Test; import org.testfx.api.FxRobot; import org.testfx.api.FxToolkit; import org.testfx.framework.junit5.ApplicationTest; import javafx.scene.Scene; import javafx.scene.control.Button; import javafx.scene.layout.StackPane; import javafx.stage.Stage; public class MyTest extends ApplicationTest { private Button button; @Override public void start(Stage stage) throws Exception { button = new Button("Click Me"); StackPane root = new StackPane(button); Scene scene = new Scene(root, 300, 200); stage.setScene(scene); stage.show(); } @Test public void testButtonClick() { FxRobot robot = new FxRobot(); robot.clickOn(button); // TODO: add assertion } @Override public void stop() throws Exception { FxToolkit.hideStage(); release(new KeyCode[] {}); release(new MouseButton[] {}); } } ``` 这个测试用例创建了一个包含一个Button组件的JavaFX场景,并测试了Button组件的点击事件。具体来说,它使用TestFX提供的FxRobot对象模拟用户点击Button组件,并在测试方法中添加了一个断言,以验证点击事件是否产生了预期的结果。 需要注意的是,为了使用TestFX进行自动化测试,需要在测试工程中添加TestFX相关的依赖库,例如: ```xml <dependency> <groupId>org.testfx</groupId> <artifactId>testfx-core</artifactId> <version>4.0.16-alpha</version> <scope>test</scope> </dependency> ``` 这个依赖库包含了TestFX的核心功能,可以方便地进行GUI组件的查找和操作。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值