翻譯|使用教程|編輯:李顯亮|2020-11-13 10:32:49.203|閱讀 575 次
概述:在JxBrowser 7.12中,Chromium引擎已升級到版本84。此Chromium版本在源代碼中有一些重大更改,本文將為你介紹都有都有哪些變化。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
JxBrowser是將基于Chromium的瀏覽器與Java應用程序集成,以處理和顯示HTML5、CSS3、JavaScript、Flash等。
近日,JxBrowser v7.12發(fā)布啦!在JxBrowser 7.12中,Chromium引擎已升級到版本84。此Chromium版本在源代碼中有一些重大更改,這些更改會影響JxBrowser的公共API。在本升級指南中,描述了7.12中刪除了哪些API,以及應該使用哪些替代方法。
覆蓋HTTP請求頭部
v7.11
在Chromium 84中,BeforeSendHeadersCallback和BeforeSendProxyHeadersCallback回調(diào)已被刪除。
network.set(BeforeSendHeadersCallback.class, params -> BeforeSendHeadersCallback.Response.override(modifiedHeaders)); network.set(BeforeSendProxyHeadersCallback.class, params -> BeforeSendProxyHeadersCallback.Response.override(modifiedHeaders));
v7.12
要在HTTP頭信息被發(fā)送到Web服務器之前覆蓋它們,請使用以下API。
network.set(BeforeStartTransactionCallback.class, params -> BeforeStartTransactionCallback.Response.override(modifiedHeaders));
資源篩選
在Chromium 84中刪除了LoadResourceCallback回調(diào)。
v7.11
network.set(LoadResourceCallback.class, params -> { if (params.resourceType() == ResourceType.IMAGE) { return LoadResourceCallback.Response.cancel(); } return LoadResourceCallback.Response.load(); });
v7.12
使用BeforeUrlRequestCallback回調(diào)來過濾資源,如下所示。
network.set(BeforeUrlRequestCallback.class, params -> { if (params.urlRequest().resourceType() == ResourceType.IMAGE) { return BeforeUrlRequestCallback.Response.cancel(); } return BeforeUrlRequestCallback.Response.proceed(); });
緩存
v7.11
刪除了被廢棄的HttpCache.clearDiskCache(Runnable)方法。
httpCache.clearDiskCache(() -> { // HTTP cache has been cleared. });
v7.12
使用以下API代替。
CompletableFuturefuture = httpCache.clear();
鼠標輪
v7.11
以下com.teamdev.jxbrowser.ui.event.MouseWheel方法已被刪除。
v7.12
使用 deltaX() 和 deltaY() 方法替代。
鍵盤活動
訪問com.teamdev.jxbrowser.dom.event.KeyEvent中的密鑰代碼的方式已經(jīng)改變。因此,刪除了無用的com.teamdev.jxbrowser.dom.event.KeyEvent.keyCode()方法。
v7.11
要訪問DOM KeyEvent的密鑰代碼,你可以使用以下API。
document.addEventListener(EventType.KEY_PRESS, event -> { if (event instanceof KeyEvent) { KeyEvent keyEvent = (KeyEvent) event; System.out.println("DOM KeyEvent: keyCode=" + keyEvent.keyCode()); } }, false);
v7.12
在這個版本中,改進了這個功能,所以現(xiàn)在它的工作方式接近于DOM API的工作方式。
document.addEventListener(EventType.KEY_PRESS, event -> { if (event instanceof KeyEvent) { KeyEvent keyEvent = (KeyEvent) event; DomKeyCode keyCode = keyEvent.domKeyCode(); String character = keyEvent.character(); System.out.println("DOM KeyEvent: keyCode=" + keyCode + ", character=" + character); } }, false);
現(xiàn)在,你可以得到預期的按鍵代碼和當前所選語言中的按鍵字符的字符串表示。
加載URL
v7.11
以下的導航方法已被刪除。
v7.12
使用以下方法代替:
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請務必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請郵件反饋至chenjj@fc6vip.cn