Android上的JavaFx WebView组件



我听说有可能在Android上启动JavaFx项目。

所以,有可能使用强大的JavaFx的WebView组件,而不是Android的WebView?

很明显(对我来说也很惊讶),看起来你可以从Android(或iOS)应用程序中使用JavaFX WebView API。

JavaFXPorts包含一些文档,这些文档链接到一些示例项目,其中一个标题为webdemo,演示了从移植环境(如Android或iOS)使用WebView API。

  • 链接到webdemo源代码。

我鼓励您按照JavaFXPorts文档来构建和部署webdemo项目。我自己还没试过呢。

一些背景和假设

我不知道WebView在移植环境中的底层实现是什么。对于桌面环境,Oracle维护了webkit代码的修改分支,作为WebView的WebEngine的底层实现。这个修改后的实现使用了JavaFX工具箱来完成所有的渲染操作,所以像按钮和选择框这样没有样式的UI元素在嵌入的WebView中在JavaFX中看起来是一样的。修改后的实现还使用Java网络代码而不是WebKit网络代码,并且可能有许多其他修改。

我的猜测是,在端口代码中,没有使用桌面系统中修改过的WebKit代码库,而是通过Android和iOS的api使用了自带的WebKit实现(但这是猜测,我不知道)。无论如何,从开发人员的角度来看,实际的实现似乎可以忽略不计,你可以使用内置在JavaFX中的WebView API获得一个嵌入式web浏览器。这使得您的代码易于在不同的环境中移植和执行。作为一名应用开发者,你不需要直接为iOS或Android的嵌入式web浏览器API编写代码,而只需坚持使用跨平台的Java API(希望它能提供你需要的所有功能)。

最新更新