List icon 目录

发布日期 2024年12月16日

JxBrowser 8.2.1

Linux 触摸屏支持

JxBrowser 现在在 Linux 系统上支持触摸屏操作,适用于硬件加速和离屏渲染两种模式。您可以通过触摸屏在 Linux 上实现文本输入、拖放元素、显示上下文菜单,并使用触摸手势与网页内容进行交互。

Cookie domain (RFC 6265)

我们优化了 Cookie API,使 Cookie 的 domain 属性符合 RFC 6265 标准第 4.1.2.3 节。当您设置 Cookie 的 domain 属性时,如果未包含前导点,JxBrowser 将自动为其添加。例如,如果您将 domain 属性设置为 example.com,JxBrowser 会自动将其更改为 .example.com,以符合标准。

Chrome 扩展程序中的媒体捕获

现在,像 Loom 这样的 Chrome 扩展程序在 JxBrowser 中运行时,可以访问 chrome.desktopCapture.chooseDesktopMedia API,从而捕获屏幕、窗口或浏览器的媒体流。

Chromium 131.0.6778.140

我们已将 Chromium 升级至新版本,其中引入了 10 项安全修复,包括:

有关自上次 Chromium 升级以来 Chromium 修复和改进的完整列表,请访问以下版本的产品博客文章:

停止支持 Rosetta 2

从此版本开始,JxBrowser 不再支持通过 Rosetta 2 在搭载 Apple Silicon 的 Mac 上运行 Chromium x64 二进制文件。我们建议使用 JxBrowser 提供的 jxbrowser-mac-arm.jar 文件中打包的原生 ARM64 版本 Chromium 二进制文件。您仍然可以使用 Java x64 运行 JxBrowser,但库现在会优先寻找原生 ARM64 版本的 Chromium 二进制文件。

进行此更改的主要原因是,通过 Rosetta 2 在 Apple Silicon 上运行的 Chromium x64 二进制文件存在严重的性能问题,导致浏览体验不佳。

重大更改

Public API

在此版本中,我们将位于 com.teamdev.jxbrowser.cast.rpc.* 包中的所有枚举移至 com.teamdev.jxbrowser.cast.* 包中。因此,如果您的代码中使用了 CastModeResultCodeMediaReceiverState 枚举,则需要将导入语句更新为新的包。

系统属性

JxBrowser 支持多个系统属性,可用于配置库的行为。在本版本中,我们重命名了几个系统属性,使其更加一致且易于理解。

重命名的系统属性:

  • jxbrowser.use.native.keyboard.input -> jxbrowser.native.keyboard.input.enabled
  • jxbrowser.jsaccessible.off -> jxbrowser.jsaccessible.disabled
  • jxbrowser.chromium.verification.off -> jxbrowser.chromium.binaries.verification.disabled
  • jxbrowser.disable.fork.extraction -> jxbrowser.jni.extraction.enabled
  • jxbrowser.nested.ui.message.loop.off -> jxbrowser.nested.ui.message.loop.disabled
  • jxbrowser.javafx.legacy.handle -> jxbrowser.javafx.jni.embedding.disabled
  • jxbrowser.linux.deps.check.off -> jxbrowser.linux.deps.check.disabled
  • jxbrowser.linux.touch.screen -> jxbrowser.linux.touch.screen.mode.enabled

已移除的系统属性:

  • jxbrowser.force.dpi.awareness。从版本 8.0.0 开始,不再需要此系统属性。

JxBrowser 将在 Engine 初始化期间检测是否仍在使用旧的系统属性。如果发现使用了这些属性,将抛出 IllegalStateException 异常。如果您看到此异常,请将旧的系统属性替换为新的系统属性。

质量优化

  • 优化了向 UrlRequestJob写入字节时的内存使用。在之前的版本中,写入的字节会先被收集在 Chromium 进程的内存中,直到任务完成才发送给发起任务的客户端。现在,写入的字节会立即发送给客户端。
  • 在 Windows 平台的用户数据目录中,禁用了 *.pma 文件的生成。这些文件包含由 Chromium 引擎收集的性能指标数据,但 JxBrowser 并不使用这些数据,因此此更改避免了磁盘空间的浪费。
  • 修复了在 Windows 平台高 DPI 显示器上,BrowserView SWT 组件缩放不正确的问题。此问题通常发生在硬件加速渲染模式下,并使用 SWT 3.128.0 或更新版本时。
  • 修复了在 PressKeyCallback 回调中显示 BrowserView Swing 组件时出现的线程死锁问题。
  • 为避免在组装 Fat JAR 文件时发生冲突,jxbrowser-mac.jarjxbrowser-mac-arm.jar 文件中的 libtoolkit.dylib 库文件现具有不同的名称。

下载 JxBrowser 8.2.1

请提供您的电子邮箱地址,我们会尽快将下载说明发送给您。

发送...
请检查您的收件箱。

我们无法发送电子邮件。请使用直接链接下载JxBrowser。

如果您已经是我们的注册客户,您无需任何操作,即可轻松享受此次更新。

如果您希望深入了解并体验我们的产品,您可以申请评估许可证。

获取免费 30 天体验