彩票走势图

JAVA浏览器控件JxBrowser v7.5全新上线!更轻松处理Dynamic Favicons

翻译|产品更新|编辑:李显亮|2019-12-30 13:49:25.553|阅读 529 次

概述:近日,JxBrowser v7.5发布啦,JAVA应用程序集成控件JxBrowser更新至7.5,允许将JavaScript对象转换为JSON字符串,扩展了允许获取当前加载的网页的图标的功能,修复多项Bug。本文将详细描述更新内容。

# 慧都年终大促·界面/图表报表/文档/IDE等千款热门软控件火热促销中 >>

JxBrowser是将基于Chromium的浏览器与Java应用程序集成,以处理和显示HTML5、CSS3、JavaScript、Flash等。

近日,JxBrowser v7.5发布啦,JAVA应用程序集成控件JxBrowser更新至7.5,允许将JavaScript对象转换为JSON字符串,扩展了允许获取当前加载的网页的图标的功能,修复多项Bug。以下是具体的更新内容。

点击下载最新版JxBrowser

新增功能

  • 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内容显示在主屏幕的左上角。



标签:

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@pclwef.cn


为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问
扫码咨询


添加微信 立即咨询

电话咨询

客服热线
023-68661681

TOP