2024
- v7.41.4
- v8.1.0
- v8.0.0
- v7.41.3
- v7.41.2
- v7.41.1
- v7.41.0
- v7.40.0
- v7.39.2
- v7.39.1
- v7.39.0
- v7.38.2
- v7.38.1
- v7.38.0
- v7.37.2
- v7.37.1
2023
- v7.37.0
- v7.36.3
- v7.36.2
- v7.36.1
- v7.36
- v7.35.2
- v7.35.1
- v7.35
- v7.34.1
- v7.34
- v7.33.2
- v7.33.1
- v7.33
- v7.32
- v7.31.1
- v7.31
- v7.30.3
- v7.30.2
- v7.30
2022
2021
2020
2019
2018
2017
2016
2015
2014
2013
2012
2011
2010
2009
2008
2007
发布日期 2019年11月26日
JxBrowser 7.4
JxBrowser 7.4 带来了许多强大的功能:现在你可以嵌入来自 Netflix、Amazon Prime、Spotify 等使用 DRM 解密的平台的视频和音频内容。此外,你还可以将 JxBrowser 嵌入到专为 ARM 设备设计的应用程序中。
ARM
JxBrowser 7.4 在 Linux 64 位上支持 ARM 架构,并已在以下环境中进行了测试:
- Raspberry Pi 2(搭载 900MHz 四核 ARM Cortex-A7 CPU)和 AWS(AWS Graviton 处理器);
- Ubuntu 16.04 LTS 和 18.04 LTS 64 位版本;
- JDK 8 64 位(JRE 不提供 GUI),OpenJDK 11(Swing + JavaFX)。
专有功能
H.264、MP4、AAC
我们很高兴地宣布,从此版本开始,您无需请求单独的 *c
构建来启用专有编解码器以播放 H.264、MP4 和 AAC 格式。您可以通过下面示例中的 API 启用默认禁用的专有编解码器:
Engine engine = Engine.newInstance(
EngineOptions.newBuilder(renderingMode)
.enableProprietaryFeature(ProprietaryFeature.AAC)
.enableProprietaryFeature(ProprietaryFeature.H_264)
.build());
H.264 和 AAC 编解码器是专有组件。通过启用这些编解码器,您声明您知晓 H.264 和 AAC 是专有组件,并且您应当具备使用它们的许可证。有关更多信息,请联系专利持有者:Via Licensing 和 MPEG LA。TeamDev 不对您使用 H.264 和 AAC 编解码器负责。
Widevine
现在您可以启用名为 Widevine 的专有组件,它允许在 Netflix、Amazon Prime、Spotify 和其他使用 Widevine 分发内容的 Web 服务上播放视频/音频内容。
Widevine 组件默认是禁用的。请使用以下代码来启用它:
Engine engine = Engine.newInstance(
EngineOptions.newBuilder(renderingMode)
.enableProprietaryFeature(ProprietaryFeature.WIDEVINE)
.build());
Widevine 是 Google 专有组件,受其自己的使用条款约束。有关更多信息,请参阅 https://www.widevine.com/。
Windows Server 2019
现在,该库正式支持 Windows Server 2019。
禁用拖放
默认情况下,对于 Swing 和 JavaFX 的 BrowserView
,拖放功能是启用的。要禁用拖放,请使用以下新的 API:
browserView.dragAndDrop().disable();
DOM 属性
DOM API 已扩展新功能,允许获取元素的属性节点列表。例如:
element.attributeNodes().forEach(attribute ->
System.out.println("name = " + attribute.nodeName()));
改进
Navigation
类已扩展了browser()
方法,允许获取与Navigation
关联的Browser
实例。- 现在,拼写检查词典被下载到用户数据目录,而不是 Windows 上包含 Chromium 二进制文件的目录。我们这样做是因为 Chromium 二进制文件所在的目录通常具有只读访问权限,并且 Engine 不允许在那里创建新文件。在这种情况下,拼写检查词典无法成功加载和初始化,因此拼写检查可能无法按预期工作。此更新后,这种情况不再存在。
- 在离屏渲染模式下,当将内容拖动到外部应用程序时,现在会更新拖动光标。
- 添加了
NetError.BLOCKED_BY_RESPONSE
该错误发生在网页服务器禁止 Frame 嵌入时。缺少的错误代码导致了一些网页不会触发FrameLoadFailed
事件的问题。 - 添加了对
Document.visibilityState
属性的支持。现在,如果您从容器中移除BrowserView
或最小化包含BrowserView
的窗口,此属性的值将会改变。 - macOS 的 JxBrowser 二进制文件已经签名并公证,以符合 macOS Catalina 的要求。
- 仅当 Linux 上的系统库缺失时,库才会创建符号链接。有时系统库可能会因系统更新而更新或删除。在这种情况下,由于符号链接损坏,下一次启动将会失败。现在,库每次启动时都会检查并创建符号链接。
- JxBrowser 现在允许从标有
@JsAccessible
注释的方法中抛出异常。您可以抛出异常或assert
。 - 在 Print Preview(打印预览)对话框中恢复了
"Print using system dialogue..."
,允许您使用系统打印对话框打印网页。 - JxBrowser 现在允许将文件(例如图片)拖放到
BrowserView
中,并做出适当的响应(例如加载并显示被拖放的文件)。
已修复的问题
- 在 Swing 或 JavaFX 容器中添加和删除
BrowserView
组件时发生内存泄漏。 - 在 Linux 上,大约 2 小时不活动后出现的 Chromium 进程意外终止问题。其根本原因是 Chromium 的更新功能,该功能试图在大约 2 小时不活动后克隆 Main Chromium 进程。由于该库不支持自动更新,我们禁用了 Chromium 中的这一功能以解决此问题。
- 在使用 Java 13 的 Linux 系统上出现
java.lang.UnsatisfiedLinkError
异常,这是由于缺少依赖项导致的。 - 在 macOS 上配置为西班牙语语言环境时,由于缺少语言包,导致 Chromium 启动失败。
- 在 macOS 上,当使用 Java 11 或更高版本将文件从文件系统拖到 Swing
BrowserView
组件中时抛出java.lang.NullPointerException
异常。 - 对于没有到期时间的会话 Cookie,将返回无效的 Cookie 到期时间。现在,如果 Cookie 没有到期时间,它将返回
Timestamp.NONE
。 - 默认情况下,文本查找器现在向后迭代。
- 在 PDF 内部搜索匹配大小写功能不起作用。
- 当将 Swing 的
BrowserView
组件嵌入到JTabbedPane
容器时,Web 内容显示在主屏幕的左上角。 - 在离屏渲染模式下,当在多个显示器之间移动
BrowserView
时,Chromium Engine 会发生本地崩溃。 - 在硬件加速渲染模式下,当 JavaFX 的
BrowserView
开始分离本地窗口时,由于缺少主 Chromium 进程,会遇到IllegalStateException
问题。 - 某些由 Angular 生成的键盘监听器在离屏渲染模式下未能处理键盘事件。
已弃用的 API
允许忽略 SSL 证书错误的 CertificateErrorCallback
功能已标记为 @deprecated
,并将在接下来的版本中移除。请改用 VerifyCertificateCallback
回调,您可以告知 Engine 无效的 SSL 证书是有效的,并且 Engine 应继续加载资源。
下载 JxBrowser 7.4
请提供您的电子邮箱地址,我们会尽快将下载说明发送给您。
我们无法发送电子邮件。请使用直接链接下载JxBrowser。
如果您已经是我们的注册客户,您无需任何操作,即可轻松享受此次更新。
如果您希望深入了解并体验我们的产品,您可以申请评估许可证。