【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>>
JxBrowser是将基于Chromium的浏览器与Java应用程序集成,以处理和显示HTML5、CSS3、JavaScript、Flash等。
近日,JxBrowser v7.5发布啦(点击下载),JAVA应用程序集成控件JxBrowser更新至7.5,允许将JavaScript对象转换为JSON字符串,扩展了允许获取当前加载的网页的图标的功能,修复多项Bug。以下是具体的更新内容。
新增功能
- JSON格式:JxBrowser 7.5允许将JavaScript对象转换为JSON字符串,并从JSON字符串获取JavaScript对象。例如:
Json json = frame.json(); JsObject jsObject = json.parse("{\"one\":1,\"two\":2}"); String jsObjectJson = json.stringify(jsObject);
- 动态图标:此版本扩展了允许获取当前加载的网页的图标的功能,此功能在7.2中引入。由于某些网页会动态更改其图标,因此,决定启用JxBrowser,以便在加载的网页上的图标被更改时获得通知。方法如下:
browser.on(FaviconChanged.class, event -> { Bitmap newFavicon = event.favicon(); });
- DOM API:在7.5中,使用JxBrowser 6中存在的以下方法扩展了DOM API:
- Element.scrollIntoView(AlignTo alignTo)
- Node.compareDocumentPosition(Node otherNode)
- 渲染过程PID:此版本包含RenderProcessAPI和功能,允许获取Frame运行中的渲染过程的PID 。例如:
frame.renderProcess().pid();
- 导航:Navigation类现在具有browser()方法,该方法允许获取Navigation实例的Browser实例。
- 导航事件:NavigationStarted和NavigationFinished事件具有isInMainFrame()方法,该方法指示是否在主框架中进行导航。
- UrlRequest的IP地址:ReceiveHeadersCallback.Params类已使用ipAddress()方法扩展,该方法允许获取UrlRequest的IP地址。
改进
- 使用DOM和JavaScript对象时,此版本的性能更好。
- 所有敏感信息(例如键盘和鼠标输入,密码等)都不会打印在调试日志消息中。
- DefaultStartDownloadCallback中显示的“文件保存”对话框现在对于Swing和JavaFX实现都是模态的。
- Navigation.loadUrlAndWait()方法现在可以处理当前加载的网页内部的导航(例如,对内部#链接的导航)。
- 适用于Windows 32位和64位的所有Chromium二进制文件均使用有效且经授权的TeamDev签名进行签名。
Bug修复
- 修复IllegalStateException错误,当在硬件加速渲染模式下删除另一个BrowserView并关闭其Browser之后将BrowserView聚焦时。
- 修复在非屏幕渲染模式下在加载的网页上进行主动渲染(例如播放HTML5视频)期间访问功能时,线程锁定。
- 修复在Windows的屏幕外渲染模式下关闭“打印预览”对话框时,线程死锁问题。
- 修复在Windows上以硬件加速渲染模式调整BrowserView大小时,由负宽度和高度引起的IllegalArgumentException错误。
- 修复当关闭浏览器实例时,当它们的引擎仍处于活动状态时,内存泄漏。
- 修复从容器中删除BrowserView组件时,发生内存泄漏。
- 调整BrowserView大小时,macOS上的Chromium GPU进程中的内存泄漏。根本原因在于两种渲染模式下未发布的mach端口。万一所有可用端口都被占用,此泄漏可能会导致系统重新引导。
- 修复调用XPathResult。 asSnapshotNodes()方法在应返回空集合时抛出XPathException错误。
- 修复将当Document实例属于IFRAME时,Document.frame()方法返回错误的Frame。
- 修复当HTTP标头在ReceiveHeadersCallback中被覆盖时,CanGetCookiesCallback回调未从Web服务器接收预期的cookie。
- 修复将Swing BrowserView组件嵌入JTabbedPane容器时,Web内容显示在主屏幕的左上角。
来源:oschina
链接:https://my.oschina.net/u/4087915/blog/3151324