日韩精品一区二区三区在线视频放-无码中文字幕V?一区二区-成年片免费观看视频-国内少妇人妻丰满av-国产精品中文字幕免费观看-亚洲成人久久一区二区三区-国内少妇偷人精品视频无缓冲-一区二区国产精品日本一区二区三区在线网

ARTICLE DETAIL

資訊詳情

深耕商務建站與企業(yè)官網(wǎng)運營的一線實戰(zhàn)洞察。

JxBrowser 7.19:Swing 嵌入 Chromium 的通信與避坑

JxBrowser 7.19:Swing 嵌入 Chromium 的通信與避坑 簡介JxBrowser 7.19 是面向 Java 桌面應用開發(fā)者的嵌入式瀏覽器組件資源適合在 Swing、SWT、JavaFX 等界面中集成網(wǎng)頁渲染、HTML 交互、登錄授權與跨平臺瀏覽能力的項目使用也可為舊版本升級、兼容性驗證和多端部署提供參考。壓縮包共 1359 個文件以 1345 個 HTML 文檔為主輔以 10 個 JAR 運行庫及少量腳本、樣式與索引文件整體約 437.21MB內(nèi)容覆蓋 Windows、Linux、macOS 等桌面與 ARM 平臺依賴并附帶完整 Javadoc 與 Browser.java 示例方便按容器類型選擇依賴并完成接入。已有 2599 人學習下載。讀者可獲得全平臺運行庫、較完整的接口文檔和最小接入示例用于核對版本差異、搭建開發(fā)環(huán)境、驗證容器嵌入方式并對照平臺分包排查常見集成問題文檔目錄也便于按類名與接口快速檢索減少反復試錯對需要維護多端一致體驗的團隊較為實用并降低環(huán)境配置成本。1. 用 jxbrowser java 把 Chromium 塞進 Swing它真正解決的是哪一類問題Java 桌面端要嵌一個現(xiàn)代內(nèi)核的瀏覽器這事兒的坑比想象中深。JavaFX 自帶的 WebView 引擎版本老H5 報表里的 ES6 語法一上來就白屏JCEF 能跑但編譯鏈得自己維護換個 JDK 就得重來一遍。所以我一般會把 jxbrowser java 這條路線重新?lián)炱饋怼狫xBrowser 7.19 屬于 7.x 線上比較穩(wěn)的一個點本質(zhì)是把整個 Chromium 內(nèi)核封裝成Engine/Browser兩層 JVM 對象Swing、JavaFX、SWT 都能掛上去。它值錢的地方不是“能顯示網(wǎng)頁”而是網(wǎng)頁里的 JS 能回調(diào) Java、Java 能攔請求改響應、離屏模式下還能截圖和打印。適合誰做桌面客戶端、界面里要嵌 H5 模塊、又不想碰 CEF 編譯鏈的 Java 團隊。它是商業(yè)庫這點要有心理準備。2. 依賴坐標與內(nèi)核目錄jxbrowser 7.19 的包結(jié)構(gòu)拆開看把 7.19 的構(gòu)件下下來第一反應往往是“怎么這么多 jar”。它不是一個單體包而是按宿主 UI 框架切的核心 API 一個 jarSwing / JavaFX / SWT 各自的視圖實現(xiàn)各一個 jar再疊一個裝 Chromium 原生庫的 classifier 包。搞不清這個分層最容易出的問題就是“代碼編譯過了一跑就NoClassDefFoundError”或者打出來的安裝包莫名其妙 800 MB。2.1 四個構(gòu)件各管什么別一股腦全引進來先看分工這張表建議存下來排查依賴沖突時對著看構(gòu)件里面是什么什么時候引jxbrowserEngine、Browser、Frame、Network等核心 API必引jxbrowser-swingBrowserView的 Swing 實現(xiàn)界面是 Swing / AWTjxbrowser-javafxBrowserView的 JavaFX 實現(xiàn)界面是 JavaFXjxbrowser-swtSWT 宿主適配老 RCP 項目核心包只提供“引擎 瀏覽器實例 DOM 操作 網(wǎng)絡事件”它不知道你要把畫面貼到哪個組件上。視圖包才是把渲染結(jié)果落到JComponent或Node上的那一層。所以只引jxbrowser不引jxbrowser-swingBrowserView.newInstance(browser)會直接找不到類。真正的體積大頭在 classifier 上。7.x 的坐標長這樣!-- 核心 API必引 -- dependency groupIdcom.teamdev.jxbrowser/groupId artifactIdjxbrowser/artifactId version7.19/version !-- cross-desktop 把 win64/linux64/mac64/mac64arm 的原生庫全塞進一個 jar 開發(fā)期省事發(fā)布期建議換成單平臺 classifier -- classifiercross-desktop/classifier /dependency !-- Swing 宿主視圖 -- dependency groupIdcom.teamdev.jxbrowser/groupId artifactIdjxbrowser-swing/artifactId version7.19/version /dependencyGradle 寫法等價dependencies { implementation(com.teamdev.jxbrowser:jxbrowser:7.19:cross-desktop) implementation(com.teamdev.jxbrowser:jxbrowser-swing:7.19) }這里的關鍵參數(shù)是classifier。cross-desktop是“全平臺 fat jar”好處是同一份依賴在 Windows 開發(fā)機、Linux 構(gòu)建機、Mac 上都能直接跑壞處是每個平臺的chrome可執(zhí)行文件和.dll/.so/.dylib都在里面包體直接翻幾倍。發(fā)布階段我一般會改成單平臺 classifier——win64、linux64、mac64、mac64arm這幾個按目標平臺分別構(gòu)建安裝包能瘦一大圈。JDK 版本上7.x 的編譯目標是 Java 8所以 8、11、17 都能跑我這邊的 11 和 17 環(huán)境都驗證過。至于 21 及以上得看構(gòu)件是否帶了對應的模塊化描述動手前先寫個Engine.newInstance的 ten 行 demo 試一下比看文檔快。2.2 渲染模式選型HARDWARE_ACCELERATED 和 OFF_SCREEN 差在哪這一步選錯后面所有界面問題都是它引起的。7.x 的RenderingMode實際上就兩條路模式渲染路徑優(yōu)點代價HARDWARE_ACCELERATED內(nèi)核開原生窗口直接疊在宿主窗口上性能接近獨立瀏覽器視頻、Canvas 都流暢z-order 由操作系統(tǒng)管Swing 的彈窗、JPopupMenu會被瀏覽器視圖蓋住OFF_SCREEN渲染到離屏緩沖再合成到 Swing 組件上能被 Swing 正常遮擋、能截圖、能透明疊加必須手動resize滾動和輸入事件得自己轉(zhuǎn)發(fā)滾動幀率明顯低一檔判斷標準很樸素如果你的界面里瀏覽器區(qū)域是“一整塊不跟別的組件重疊的矩形”選HARDWARE_ACCELERATED如果需要在這個區(qū)域上浮一層自定義的 Swing 控件、或者要對著頁面做截圖和錄像、或者要嵌進帶透明背景的面板里選OFF_SCREEN。OFF_SCREEN有一個幾乎人人都會踩的點不調(diào)resize就是一片白。它不是自動跟隨容器尺寸的必須顯式告訴內(nèi)核畫布多大// 離屏模式下必須先給出畫布尺寸否則內(nèi)核不知道渲染多大表現(xiàn)為純白 browser.resize(1280, 800); BrowserView view BrowserView.newInstance(browser); // 組件尺寸變化時要同步回去否則拉伸窗口后頁面還是舊尺寸 view.addComponentListener(new ComponentAdapter() { Override public void componentResized(ComponentEvent e) { browser.resize(Math.max(1, view.getWidth()), Math.max(1, view.getHeight())); } });resize的寬高必須大于 0最小化窗口時如果傳 0內(nèi)核那邊會拋參數(shù)異常所以上面加了Math.max(1, ...)兜底。這一行是血淚經(jīng)驗不加的話用戶一最小化再還原就崩。2.3 內(nèi)核落地目錄別讓首次啟動去解壓臨時目錄Engine.newInstance第一次執(zhí)行時會把 Chromium 內(nèi)核解壓出來。默認落到系統(tǒng)臨時目錄下的一個帶版本號的子目錄里。開發(fā)機上無所謂生產(chǎn)環(huán)境就有兩個隱患一是臨時目錄可能被安全策略限制寫入二是某些清理工具會把臨時目錄當垃圾掃掉用戶第二天打開軟件就報內(nèi)核加載失敗。所以我一般會顯式指定內(nèi)核目錄Path base Paths.get(System.getProperty(user.home), .myapp); Path chromiumDir base.resolve(chromium); EngineOptions options EngineOptions.newBuilder(RenderingMode.HARDWARE_ACCELERATED) // license 單獨封裝別硬編碼在源碼里也別提交到倉庫 .licenseKey(LicenseStore.load()) // 內(nèi)核落地目錄要求可寫預留至少 500MB 空間 .chromiumDir(chromiumDir) // 虛擬機和遠程桌面環(huán)境下關掉著色器緩存能少一類花屏問題 .addSwitch(--disable-gpu-shader-disk-cache) .build(); Engine engine Engine.newInstance(options);三個參數(shù)逐個說。licenseKey是必填的7.x 沒有合法 license 會在newInstance階段直接拋異常不是運行到一半才攔。chromiumDir指定解壓目標一旦指定后續(xù)啟動會復用這份內(nèi)核不再重復解壓冷啟動能從幾十秒降到幾百毫秒。addSwitch是往 Chromium 命令行透傳開關等價于你在啟動 chrome 時加參數(shù)排障時特別有用——花屏加--disable-gpu字體渲染異常試--disable-font-subpixel-positioning。如果chromiumDir這個構(gòu)建器方法報“找不到符號”先別懷疑自己寫錯了多半是拿到的構(gòu)件不是標準 7.19 的官方構(gòu)建被重新打包過。版本對不上的包后面還會在內(nèi)核版本、license 校驗上出各種玄學問題。指定完目錄要驗證進到~/.myapp/chromium下應該能看到一個chromeWindows 上是chrome.exe加一堆動態(tài)庫總大小幾百 MB。如果目錄是空的說明參數(shù)沒生效或者寫入被攔了去看日志里有沒有被吞掉的IOException。3. 最小閉環(huán)Engine 單例、Browser 多開、BrowserView 掛載依賴理順了接下來是把一個能跑的窗口搭出來。這三層對象的生命周期差別很大混著用是后面卡頓和進程泄漏的根源Engine是重對象一個進程只能有一個Browser是輕對象可以開很多個BrowserView只是把某個Browser的畫面貼到某個組件上不持有內(nèi)核狀態(tài)。3.1 一個線程安全的 Engine 持有類Engine.newInstance是阻塞的而且內(nèi)部會拉起一整套 Chromium 子進程。放在 EDT 上執(zhí)行界面會直接凍住十幾秒——這不是性能問題是“用戶以為程序掛了”的問題。所以我把引擎初始化單獨抽出來public final class BrowserEngineHolder { private static volatile Engine instance; public static Engine get() { Engine local instance; if (local null) { synchronized (BrowserEngineHolder.class) { local instance; if (local null) { EngineOptions options EngineOptions.newBuilder(RenderingMode.HARDWARE_ACCELERATED) .licenseKey(LicenseStore.load()) .chromiumDir(Paths.get(System.getProperty(user.home), .myapp, chromium)) .build(); local Engine.newInstance(options); instance local; // 兜底關閉防止用戶直接關進程留下僵尸子進程 Runtime.getRuntime().addShutdownHook(new Thread(local::close, jxbrowser-shutdown)); } } } return local; } private BrowserEngineHolder() { } }雙檢鎖是為了保證并發(fā)調(diào)用時只創(chuàng)建一個引擎。很多項目啟動時會并發(fā)初始化多個業(yè)務面板如果每個面板都newInstance你會看到任務管理器里瞬間冒出幾組 Chromium 進程每個都占幾百 MB還互相搶 GPU 進程。addShutdownHook那一行是后悔藥。用戶在任務管理器里結(jié)束進程時JVM 的關閉鉤子仍會執(zhí)行能把這批 Chromium 子進程一起收掉沒有它異常退出后下次啟動可能出現(xiàn)端口/鎖文件沖突。這個get()必須在啟動階段、非 EDT 線程上預熱一次。我一般放在 splash 界面加載時用SwingWorker里跑界面先顯示“正在初始化瀏覽器內(nèi)核…”。3.2 Browser 的創(chuàng)建與 URL 加載時機Browser很便宜engine.newBrowser()通常在幾十毫秒內(nèi)返回。真正耗時的是頁面導航。所以創(chuàng)建和加載要分開看Engine engine BrowserEngineHolder.get(); Browser browser engine.newBrowser(); BrowserView view BrowserView.newInstance(browser); panel.setLayout(new BorderLayout()); panel.add(view, BorderLayout.CENTER); // 導航是異步的這里返回不代表頁面已經(jīng)加載完 browser.navigation().loadUrl(https://report.internal/dashboard); // 加載完成事件里再做 DOM 注入、JS 通信這類事 browser.navigation().on(FinishLoading.class, event - { LOG.info(loaded: {}, event.url()); });loadUrl是異步的。緊接著在下一行去executeJavaScript經(jīng)常拿到的是null或者空對象因為 DOM 還沒建完。所有依賴頁面結(jié)構(gòu)的操作都得掛在FinishLoading或DocumentLoaded回調(diào)里。同一個Browser可以重復用切換頁面用loadUrl或loadHtml不需要關掉重建。但換業(yè)務模塊時建議browser.close()再新建一個——不是必須只是把可能泄漏的 JS 定時器和事件監(jiān)聽一起清掉。BrowserView.newInstance(browser)這個方法名在HARDWARE_ACCELERATED和OFF_SCREEN下是同一個差異在Engine那邊就定了。所以渲染模式必須在建引擎時就定死中途改不了。3.3 關閉順序先 browser 后 engine關閉順序錯了控制臺會刷一堆IllegalStateException嚴重的時候進程退不干凈。正確順序是自下而上// 關閉單個瀏覽器視圖 browser.close(); // 應用退出時再關引擎順序不能反 engine.close();browser.close()會釋放這個頁面的渲染進程和所有 JS 上下文engine.close()會終止整個 Chromium 進程組。如果先engine.close()再browser.close()后者會對一個已經(jīng)失效的引擎發(fā)指令拋異常如果只關窗口不close瀏覽器渲染進程會一直掛著用戶反復打開關閉同一個模塊進程數(shù)會一路漲上去。一個常見的錯誤寫法是在windowClosing里先調(diào)engine.close()再dispose()界面。改成先關所有Browser最后統(tǒng)一關Engine這類問題就沒了。4. 雙向通信JS 調(diào) Java、Java 注 JS、請求攔截頁面能顯示只是第一步。真正讓嵌入方案有價值的是雙向通信網(wǎng)頁里的按鈕要觸發(fā) Java 側(cè)的下載、Java 側(cè)要把登錄態(tài)塞給頁面、某些請求要在網(wǎng)絡層被改寫。JxBrowser 7.x 給了三層機制從輕到重依次是注入執(zhí)行、對象橋接、網(wǎng)絡攔截。4.1 JsAccessible 加 JsObject把 Java 對象掛到 window 上最省事的做法是把一個普通 Java 對象掛到window上頁面里直接當 JS 對象調(diào)用。前提是方法必須標JsAccessible不標的一律不可見——這既是安全邊界也避免把整個對象圖暴露出去public final class HostBridge { JsAccessible public String readToken() { return TokenStore.current(); } JsAccessible public void log(String message) { LOG.info([web] {}, message); } }掛載的時機必須等頁面加載完browser.navigation().on(FinishLoading.class, event - { browser.mainFrame().ifPresent(frame - { // executeJavaScript 返回 JsObject 時是頁面里的 window 本身 JsObject window frame.executeJavaScript(window); // 掛上去之后頁面里可以直接 hostBridge.readToken() window.putProperty(hostBridge, new HostBridge()); }); });frame.executeJavaScript(window)這里看起來有點繞但它返回的就是頁面window的JsObject引用putProperty相當于在頁面里執(zhí)行window.hostBridge {...}。參數(shù)名這里是hostBridge就是頁面?zhèn)仍L問用的全局變量名別跟業(yè)務里已有的變量撞。注意兩點。第一JsAccessible方法是在哪個線程被調(diào)用的取決于內(nèi)核回調(diào)線程不是 EDT方法體里如果要改 Swing 組件必須SwingUtilities.invokeLater包一層否則就是經(jīng)典的隨機崩潰。第二參數(shù)和返回值只支持基礎類型和字符串傳自定義對象會靜默變成undefined這個坑很隱蔽。4.2 executeJavaScript 的返回值邊界Promise 不是值executeJavaScript看著像個萬能入口實際上它只能同步拿到表達式的即時結(jié)果。頁面里fetch(...)、async函數(shù)返回的是一個 Promise 對象你拿到的是JsObject不是數(shù)據(jù)// 錯誤示范拿到的不是數(shù)據(jù)是 Promise 的包裝對象 Object wrong frame.executeJavaScript(fetch(/api/profile).then(r r.json())); // 可行做法讓頁面同步返回序列化好的字符串 String json frame.executeJavaScript(JSON.stringify(window.__profile || null));所以我的習慣是不指望從executeJavaScript直接取異步結(jié)果而是在頁面?zhèn)葤煲粋€回調(diào)函數(shù)Java 側(cè)先注冊橋接對象頁面拿到數(shù)據(jù)后主動調(diào)hostBridge.onProfileLoaded(json)。這樣數(shù)據(jù)流向是單向的、可追蹤的出問題也容易定位。JSON.stringify那一步別省。JxBrowser 對 JS 對象的自動轉(zhuǎn)換只覆蓋基礎類型直接返回Object或者數(shù)組經(jīng)常得到一個看起來像數(shù)組、實際取不到值的怪東西也不好斷點。序列化成字符串Java 側(cè)用任意 JSON 庫解析行為最確定。4.3 網(wǎng)絡攔截BeforeUrlRequest 攔請求、BeforeSendHeaders 改頭網(wǎng)絡層是這套方案里最容易被低估的能力。engine.network()上可以訂閱一系列事件用來做請求阻斷、請求頭注入、mock 響應// 阻斷某個路徑下的所有請求常用于屏蔽頁面里的第三方統(tǒng)計腳本 engine.network().on(BeforeUrlRequest.class, event - { if (event.url().contains(/legacy/)) { event.preventDefault(); // 攔掉頁面?zhèn)缺憩F(xiàn)為請求失敗 } }); // 給所有出站請求補一個客戶端標識后端按這個標識下發(fā)不同版本 engine.network().on(BeforeSendHeaders.class, event - { HttpHeaders headers event.headers().toBuilder() .add(X-Client, desktop/1.0) .build(); event.setHeaders(headers); });BeforeUrlRequest觸發(fā)在請求發(fā)出之前preventDefault()就是阻斷頁面里對應的fetch會走 reject 分支所以頁面?zhèn)纫卸档滋幚矸駝t用戶看到的是一個一直轉(zhuǎn)圈的加載態(tài)。BeforeSendHeaders觸發(fā)在請求頭組裝完成之后headers().toBuilder()拷一份再改不要直接改原對象。這兩個接口在不同小版本之間簽名略有出入寫的時候靠 IDE 補全確認參數(shù)類型別照抄網(wǎng)上的老代碼。另外網(wǎng)絡事件回調(diào)不保證在 EDT 上回調(diào)體里做重活比如寫數(shù)據(jù)庫、讀大文件會拖慢整個網(wǎng)絡層建議只做判斷和轉(zhuǎn)發(fā)。5. 避坑與排查許可證、首次啟動、EDT、進程殘留、打包五個翻車點前面四章都是“怎么跑起來”這一章講“為什么跑不起來”。下面五個問題是我在不同項目里反復遇到的按出現(xiàn)頻率排。每個都按現(xiàn)象、原因、解決三段寫遇到了直接對號入座。5.1 許可證與內(nèi)核來源兩個最容易被忽略的前置條件現(xiàn)象一本地開發(fā)一切正常換到測試機或者打包后運行啟動即拋異常提示 license 缺失或無效。原因7.x 的 license 校驗發(fā)生在Engine.newInstance而且它是跟簽發(fā)時的應用標識綁定的不是隨便一個字符串都能過。另外把 license 硬編碼進源碼、或者放在沒被打進安裝包的資源目錄里都會導致運行期讀不到。解決把 license 的讀取抽成單獨一層優(yōu)先讀外部配置文件其次讀環(huán)境變量最后才回落到打包內(nèi)的資源。啟動時把 key 的前 8 位打進日志不要打全量一眼就能看出讀到的是不是預期那一份。生產(chǎn)環(huán)境更穩(wěn)的做法是把 license 放在安裝目錄的conf/下隨配置一起下發(fā)方便替換。現(xiàn)象二chromiumDir指定了目錄卻始終是空的或者目錄里有文件但程序報內(nèi)核版本不匹配。原因拿到的構(gòu)件被重新打包過classifier 里的原生庫和jxbrowser核心包的版本對不上。這種情況在來源不明的整合包里特別常見。解決核對 jar 的清單文件里的版本號和依賴聲明里的7.19是否一致。對不上就換回標準構(gòu)件。生產(chǎn)項目不要用來源不明的整合包出了問題沒有任何線索可查純屬給自己埋雷。5.2 線程與卡死在 EDT 上碰 Engine 的代價現(xiàn)象雙擊圖標后窗口白屏十幾秒到一分鐘進度條不動Windows 直接標“未響應”。原因Engine.newInstance在 EDT 上執(zhí)行。首次運行要解壓幾百 MB 的內(nèi)核文件這段時間 EDT 被完全占住Swing 連重繪都做不了。解決把引擎初始化放到啟動線程或者SwingWorker#doInBackground里界面先顯示一個 splash 或者“初始化中”的占位面板初始化完成后再切到主界面。第二次及以后的啟動因為內(nèi)核已解壓通常幾百毫秒就夠但代碼不能假設“一定是第二次”。現(xiàn)象點擊頁面按鈕后整個界面卡住幾秒然后恢復日志里能看到 JS 調(diào)用記錄。原因在 EDT 上同步等待executeJavaScript的結(jié)果或者JsAccessible方法體里做了阻塞 IO。解決橋接方法里只做輕量轉(zhuǎn)換把耗時邏輯丟到線程池需要的返回值通過回調(diào)再送回頁面。判斷標準很簡單——橋接方法體超過 10 行就該拆了。5.3 進程與打包任務管理器里的進程數(shù)是最好的體檢指標現(xiàn)象反復打開關閉同一個業(yè)務模塊任務管理器里 Chromium 相關進程數(shù)一路往上漲內(nèi)存也跟著漲最后 OOM。原因只把BrowserView從容器里remove了沒有browser.close()。視圖沒了但渲染進程和 JS 上下文還活著。解決把browser.close()和界面銷毀綁在一起寫在一個統(tǒng)一的dispose()方法里模塊卸載時必調(diào)。上線前做一次“打開關閉 20 次”的壓測看進程數(shù)是否回到初始值這是最直接的驗證手段。現(xiàn)象開發(fā)機能跑打成安裝包后安裝到干凈機器上界面一片空白日志里沒有任何異常。原因內(nèi)核二進制沒進安裝包或者進了包但被安全軟件攔在臨時目錄外或者目標機器的用戶目錄沒有寫權限。解決顯式指定chromiumDir到安裝目錄下的子目錄并在安裝包里預置好這份內(nèi)核跳過首次解壓。安裝完成后加一步校驗檢查目錄下chrome可執(zhí)行文件是否存在、動態(tài)庫數(shù)量是否與預期一致。這一步能擋掉大部分“換臺機器就不行”的問題。6. 上線前的自檢把內(nèi)核版本、線程歸屬和關閉行為都打出來調(diào)到后期問題往往不是“跑不起來”而是“跑起來但行為不對”。我習慣在動手寫業(yè)務代碼之前先跑一段自檢把三個不確定因素量化出來內(nèi)核到底是什么版本、回調(diào)落在哪個線程、關閉之后進程有沒有真的退干凈。public final class BrowserSelfCheck { public static void main(String[] args) throws Exception { Engine engine BrowserEngineHolder.get(); System.out.println(engine created on: Thread.currentThread().getName()); Browser browser engine.newBrowser(); browser.navigation().loadUrl(about:blank); browser.navigation().on(FinishLoading.class, event - { // UA 里 Chrome/xx 那段就是內(nèi)核真實版本比看文檔靠譜 System.out.println(userAgent browser.userAgent()); // 回調(diào)線程名能直接告訴你這里能不能碰 Swing System.out.println(callback thread Thread.currentThread().getName()); // 離屏模式下這一行必須 0否則就是白屏 System.out.println(viewport browser.mainFrame().isPresent()); }); Thread.sleep(3000); browser.close(); engine.close(); // 正常情況這行打印后 1~2 秒內(nèi)進程列表里的 Chromium 子進程應全部消失 System.out.println(closed, check process list now); } }三個輸出各有用途。userAgent里的Chrome/后面那段數(shù)字是內(nèi)核真實版本比你翻構(gòu)件元數(shù)據(jù)可靠——如果它和你預期的代際差得遠說明內(nèi)核目錄里躺著一份舊的解壓結(jié)果刪掉chromiumDir重來。callback thread決定了你的回調(diào)體能不能直接操作界面名字不是AWT-EventQueue-0的一律得包invokeLater。最后那句closed打印完之后去任務管理器看一眼子進程如果還在就是某個Browser沒關。這段代碼我一般會做成一個隱藏的“診斷”菜單項讓現(xiàn)場實施的人也能點一下把三行輸出貼回來。比讓用戶描述“有時候會卡”有用得多。從那以后我每次把 jxbrowser 塞進新項目都強制先跑一遍這段自檢再談業(yè)務邏輯——省下來的排查時間比寫這段代碼的時間多得多。手上這份 7.19 的包建議也先按這個順序跑通再加功能。希望幫到你。本文還有配套的精品資源點擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
中文字幕av亚洲精品| 婬女免费一二三区A片| 亚洲AV性爱电影| AV中文在线可看| 蜜桃臀久久| 久久久久久久久久va| 欧美|91色综合| 日本二区不卡| 日韩黄色成人性爱| 丝袜高跟澳门91视频| 韩日色费| 午夜精品久久久久久久99热影院| 黄色片一区二区三区四区五区| 超91综合网| 91天美免费| 午夜男人一级A片7777| 国产精品亚洲天堂网址| 另类 综合 日韩 欧美 亚洲| 久久av成人无码免费| 97超碰总站| 奇米四色影视777久久久| 久久精品免费| 国产精品点击进入在线影院| 伊人 俄罗斯 a v| 欧美日韩香蕉| 日天天九九天堂666| 国语av最新自产拍在线观看| 亚洲日韩资源| 丁香五月久久| 人人做,人人操,人人摸| 欧美日韩婷婷中文| 日韩欧美中文日韩欧美色| 偷拍精品一区二区三区| 日韩人妻一区二区精品| 97色碰| 欧美一区二区成人一卡| 欧美少妇大量自拍视频在线观看| 性爱网站一区二区| 国产精品电影推荐| AV无码久久久精品| 亚欧美综合网| 日韩BBN| 97色碰| 在线视频 亚洲精品| 97色色色综合网站| 黄色毛片A片| 加勒比综合88| 国产美女口爆吞精| 亚洲超碰在线| 性色AV蜜色av色欲av| 97视频620| 婷婷五月天丁香| 在线观看不卡一区二区三区| 在线色导航| 91日日夜夜| 日韩九区| 天天爽夜夜爽夜夜爽精| 99re视频在线播放青草| 国产精品久久久久久久免牛肉蒲团 | 国产综合日韩伦理| 春色综合免费| 亚州成人A√| 亚洲图片欧洲图片aⅴ| 欧美爱爱97| 黄色不卡视频| 爱爱60秒免费视频| 六十路日本| 无码免费在线观看黄色片| 日韩欧美天堂| 久久精品视| 久久国色天香香蕉| 久久久久9| 亚洲av综合色| 精品人妻免费观看| 岛国片在线播放| 日韩本不卡视频在线观看| 九九英色视频| 精品人妻一区二区免费蜜桃| 久久精品人体| 任我爽视频在线观看| av天堂手机版追回| 亚洲精品一区二区三区在线播放| 在线综合 亚洲 欧美中文字幕| 久久伊人影院| 天天射日日干| 日韩AV噜噜噜一区二区三区四区| 超碰免费欧美7| 成人影 天天操 亚洲| 伊人精品久久网站| 亚洲丝袜少妇在线| 日韩av情韩国爱禁区av一区二区| 九九国产| 伊人嫩草| 啊啊啊久久久视频| 啪啪啪男女亚洲中文字幕99| 五月激情综合网| 囯产精品一区二区三区线|亚洲人成无码网WWW动漫|国产精品免费一级... | 久久久久亚洲精品| 婷婷五月天色色| 人人操人人插人人摸人人干| 天天做天天爱| 国产欧美另类久久久精品课程| 国产超碰在线一区| 亚洲91亚洲| 国产免费一区二区三区最新不卡 | 天美传媒精品一区二区三区| 74成人在线| 丝袜夫妻自拍| 丁香五月av| 全球成人中文在线| 国产一级作爱毛片| 国产91丝袜在线播放蜜月| 高清有码一区二区| 亚洲淫乱骚妇AV| 亚洲色图91欧美日韩| 户外裸露刺激视频第一区| 日韩精品在线观看观看| 国产亚洲美日韩Aⅴ中文字幕无码成人| 欧美一区二区三区不卡高清视频| 超碰久久.com| 中出欧美| 久久久久九九九| 校园激情狠狠四射| 日本不卡一二区| 国产三级片在线观看| 中文字幕一区二区无码成人| 国产成人精品亚洲日本| 国产熟女乱论| 色噜噜婷婷| 另类天堂| 久噜噜| 中文字幕女同在线| 欧美 亚洲 综合 制服 另类| 日韩无码服务区| 亚洲日韩电影| 欧美午夜视频免费观看| 亚乱色| 国产精品一级特黄aaa大片在线观看| 少妇啪啪自拍| 国产热RE99久久6国产精品首| 色香色欲天天综合网天天来吧 | 九九久久国产精品| 后入日本1234| 好吊色综合| 日韩有码专区| www.av在线视频| 日本一级性爱| 免费视频在线观看啊啊啊啊啊| 欧美日韩免费专区在线| 国产成人天堂| 国产400孕妇孕交群| 国产无吗在线播放| 精品一区二区亚洲国产| 天天添天天干电影| 色哟哟-国产专区| 啊啊啊水好多| 国产精品探花色| 久久香蕉国产线看观看猫咪av| 97资源站日韩| 第四色奇米影视777| 日韩性爱播放| 午夜毛片高清免费不卡| 人妻另类 专区 欧美 制服| 久久精品国产亚洲AV嘿嘿| 99精品久久| 男插女青青影院| 中文字幕视频免费| 欧美强奸乱能| 久操99| 射 色综合| 91狠狠综合久久久久久| 国产第25页在线观看| 亚洲激情网| 久久99久久99精品天美传媒棢·纸:.| 午夜精品久久久久久久99热影院| 免费久久9999| 男人的天堂 在线一区| 黄色香蕉视频网站一区| 五月丁香影视| 亚洲中文字幕av| 久久无码一区二区二三区性色| 凹凸视频特色日本特黄| 一本一首道人妻少妇免费久久| 一本一道久久综合久久| 日本操嫩b网| 91n美女视频| 后入式999| 激情熟女12P| 成人青青草原伊人| 黄色片大香蕉| 超碰免费欧美7| 国产深夜福利| 蜜臀国产AV中文字幕| 亚洲精品人伦一区二区| 美女操逼A A| 91人人爽人人爽| 少妇色欲综合网2| 亚洲精品视频二区| 久热婷婷| 久9爱经典视频 | 婷婷五月天基地| 91美女看B| 俄罗斯一区二区视频在线观看| 日韩情色视频| 秋霞色色影院| 日韩有码免费视频| 日韩美女久久一区二区三区| 91精品91久久久久77777| 强奸乱伦AV一天堂网| 小草三级久久观看| 日本不卡二区| 97人妻色| 国内亚洲高清无码| 亚洲人妖网| 操逼视频国产无套| 97在线欧洲| 国产精品视频91久久| 日韩亚洲美女一区久久| 麻豆天美国美国产| 日本一区不卡| 日欧美色| 999精品国产高清一区二区| 不卡超碰护士AV在线免费播放| 精品人妻一区二区三区日产| 有码免费观看| 国产精品久久久久久久AV大片| 操我啊啊啊啊啊| 9Ⅰ老熟女| 91jk色拍| 人妻系列无码专区中文有码| 午夜操一视频一区| 久久精品人体| 国产亚洲精品美女久久久| 淫乱图区| 亚洲国产一区二区三区四区国产| 欧亚三区动漫| 蜜臀久久99精品久久久久免费观| 少妇无码av专区线| 人妻大香蕉| 婷婷在线视频| 国产亚洲中文不卡二区| 色欲天香天天综合网-成年人三级片网站-欧美乱妇狂野-日韩国产专区-久久久久久 | 日韩人妻制服丝袜av| 欧洲亚洲人妻无码中字久久三区四区| 操高情无码| 九九九九九九精品| 少妇蜜汁| 欧美综合网A| 欧美真人抽搐一进一出gif | 欧美久热| 欧美97| 男人的天堂2000| 狠狠色噜噜狠狠狠狠狠色综合久久| 日夜尻逼网| 国产成人亚洲精品自产在线 | 中文字幕一二三av| 啊啊啊啊啊啊啊国| 国产亚洲色婷婷久久99精品91葵花宝典| 中文字幕精品三级久久久| 亚洲无码99| AV一起草在线| 91熟女丨老女人| 国产白领连续中出在线播放| 激情六月天| 国产精品久久久久久高清无码免费看| 欧成人在线| 囯戸精品高潮呻吟旡码| 一牛影视成人片免费| 欧美色图中文字幕| 亚洲无码一区二区三区三州| 欧美美女自慰一区二区三区| 天美麻豆一区二区三区| 美国久久一二三四| 精品 码产区一区二-1080P高清在线www-B029AV | 午夜舔阴达高潮视频免费看| 强乱老妇中文字幕| 国模91| julia在线观看久久| 五月婷婷丁香中文字幕| 国产在线视频二区| 九九碰九九爱97超| 国产欧美日产一区二区三区 - 国产欧美日| 狠狠色噜噜狠狠狠狠狠色综合久久| 黄站在线免费观看| 狠操91,com| 操操操操网黑人| 嗯嗯啊操我| 免费一级毛片在线视频观看| 国产精品一区二区三区,亚洲综合| 精品国产乱码久久| 久夜操| 蜜乳AV色欲AVAV无码| 四季AV综合网址| 97伊人网| 999久久久九| 亚洲色久| 国产精品高朝久久久久久久| 天天影视综合色| 精品无码秘 人妻一区二区| 日本操嫩b网| 资源新线在线天堂| 日韩二级| 欧美区亚洲区偷拍区| 国产精品网站免费 | 美女让帅哥通她小鸡鸡| 区二区亚洲婷| SUV一区二区在线看| 亚洲成人色情五月天丁香花| 裸体1区| 久久少妇视频| 久久久久921| 亚洲欧美日韩国产丝袜自拍中文| 日本一天色道久久久精品视频| 99久久com免费视频′| 亚洲色图大香| 欧亚乱色熟一区二区三四区| 亚洲国产欧美日韩精品一区二区三区,国产一区二区三区在线看片,欧美性猛交 XXX | 九九九久久久久| 日日夜夜干| 夜夜操天| 91嫩草欧美| 蜜臀色乳| 国产自偷| 97综合国产| 男人天堂欧美| 久久久久久久免费A片国产成a人亚洲精∨品无码 | 久热九九| 91丨九色丨熟女高潮| 99丝袜福利在线播放| 人人操天天爽| 校园春色亚洲无码| 欧美少妇高潮| 桃花色综合影院| 欧美性爱免费短视频| 亚洲一区二区三区播放在线| 在线观看中文av字幕| 久久香蕉影院| 91天美传媒精品| 亚洲精品白丝| 日韩情色一区二区| 五十路三区在线| 操逼逼中文字幕| 99性视频| 香蕉免费一区二区三区不读| 极品色综合| 日本高清免费一本视频在线观看| 日韩久久激情精品| 暖暖精品二区三区观看| 黄色一区三区| 九九九九久久久久| 网页导航五月天免费一二三区| www.夜夜| 欧美骚少妇| 久久久亚洲精品中文字幕人妻| 一级性爱啪啪视频| 亚洲欧美精品一区天堂久久| 国产精品久久久久999| 噜噜噜噜久久久精品免费| 一区二区三区美女超清| 发朗少妇买婬全视频中文| 97香蕉人人乳| 日韩九九九| 人人看欧美性爱| 久久国产精品一级二级三级| 国产欧洲精品亚洲午夜拍精品| 人人妻人人爱人人玩| 中文字幕国产| 久久超碰爱| 久久9精品网站| A级毛片在线看免费| 九九亚洲视频| 伊人午夜福利视频| 日B操| 欧美日韩99| 中文字幕十五区| 亚洲丝袜诱惑| 中日高清无码操逼视频| 97 超碰 人人做 人人爱| 97超碰欧美精品| 强奸乱伦大香蕉网| 国产乱人妻精品入口| 91综合中文字幕| 亚洲超碰在线| 久男人久久| 亚洲国产精品9999在线观看| 超碰97玖玖爱| 天天射天天操天天干天天吃2018| 日韩乱码Av| 97超碰9| 在线观看国产黄色| s片在线观看| 老司机天天操| 国产妇女精品视频青青草| TS人妖另类精品视频系列| 长长久久免费视频| 视频二区美腿制服人妻欧美| 亚洲av乱伦色图网站| 亚洲精品蜜桃久久久久久久| 精品成人亚洲午夜电影| 曰本91情色| 操www| 伊人玖玖网| 日韩国产欧美伦理在线| 久久精品高清无码一区| 色嗨嗨在线| 日韩不卡网操逼中文字幕日韩| 国产日韩精品人妻久久久久色欲网站| 精产国品一区二三产品| 欧美日韩免费性爱| 91老熟女老女人国产老太| 在线中文字幕| 2026国产精品视频| 亚洲av无线观看| 久久久草草精品| 久久久久国产精品片区无码直播| 亚洲 欧美 日韩另类 麻豆| 国产精品一区二区 尿失禁| 久久久久久久久国产| 深田咏美亚洲精品福利社| 亚欧美综合| 在线99热| 久久男人精品| 成人三级片一区二区三区视频| 人人扣人人操| 亚洲无992tv| 日韩成人午夜精品久久高潮| av网页一区二区三区| 97超碰超欧美。| 大香蕉520| 精…码一二三区| 69AV女优男人的天堂| 亚洲精品国产熟女| 四虎884a| 蜜臀少妇一区二区| 亚洲日韩视频二区| 伊人嫩草| 欧美最婬乱婬爆婬性视频| 亚欧性爱无码| 欧美宗合网| 色婷婷蜜臀av| 最新国产亚洲精品精品国产亚洲综合 | 天天插夜夜操| 免费超碰97久久| 男人天堂婷婷五月天校园春色| 日韩av在线精品观看| 久操影视| 丁香五月天婷婷姐| 国产精品久久久久久久毛片1| 婷婷探花久久精品一区| 日韩一区二区熟女| 国产精品99久久久www| 啊啊啊啊啊好多水| 国产精品乱码久久久久久| 黄色污污污污污污网站| 熟女精品va中文字幕| 欧美97在线欧| 蜜桃视频啊啊啊啊| 婷婷激情五月| 日韩成人电影AV| 亚洲色欲天天天堂色欲网女| 丝袜AV一区二区三区| 九九九精品一区二区无码| 精品久热| 人人天天干干| 免费一级a毛片久久久久久鸭绿欲| 大逼色网站| 欧美97日韩精品| 九久久九精品视频| 激情专区综合| 激情视屏国产乱伦强奸| 国产特级毛片AAAAAA高潮流水| 日日骚网站| 欧美综合传媒| 精品无码人妻一区二区免费蜜桃| 在线观看十八禁| 国产亚洲国产超碰| 日本操逼视频导航| 秋霞成人做爱| 欧美v亚洲v综合v国产v妖精| 亚洲熟女综合网| 亚洲精品黑丝| 9久精品视频在线观看| 动漫片子网站3黄| 亚洲天堂电影精品一区| 另类天堂| 91粉芽高清在线一区二区| 粉嫩绯色AV一区二区在线| 国产欧美精选自拍一区| 9999久久久| 九久久九九久视频| av东京热男人的天堂| 欧美韩国你懂得在线 | 欧美18 在线观看| 你懂的在线观看区国产| 好舒服视频| 97中文字幕色| 亚洲欧美日韩偷拍色图| 日韩大香蕉AV影片| 超碰色大香蕉| 天天综合香 ld视频| 国产a级精品| 激情五月天网| 天天弄天天操| 日韩一区二区高清在线观看的| 丝袜美腿91| 91热色| 老熟妇一区二区三区啪啪| 亚洲丝袜色图| 欧美婷婷久久| 色综合99999| 国产精品不卡一区二区三区| 91爱欧美| 99热这里只有精品1| 精品国产乱码久久久久久日本公司| 91无摭挡| 91痴汉| 色九久| 淫纸中9区| 99999精品| 成全动漫视频观看免费下载| 中文字幕高清精品一区| 日本操嫩b网| 高清在线偷拍自拍视频| 国产这里只有精品| 亚洲精品97在线| 国产人伦精品一区二区三区| 伊人aaa| 九九九九亚洲| 国产资源中文字幕在线| 日韩国产不卡在线视频| 岛国艾薇凹凸视频天堂| 精品精品精品| 九九九久久久久| 91天天美女| 中国特猛少妇色xxx| 欧洲性爱无码区| 亚洲va有码在线天堂| 亚洲一区二区三区AV无码 | 一本久久精品中文字| 曰韩操B| 在线观看黄色电话| 青青草吊丝| 99国内熟女露脸视频| 加勒比海人人操超碰在线| 无码动漫av中文字幕| 国产三级日产三级韩国三级| 国产精品制服丝袜中文字幕日韩一区二区三区| 91五月天| 精品人妻一区二区三区在| 国产A v无码专区| 日日狠狠久久偷偷色综合免费| 色情亚洲日本成人| 欧美色网络| 99re热有精品视频国产| 九九热在线精品视频| 欧美 亚洲 另类 综合| 欧美78P| 温婉少妇玩3p| 嗯~啊~快点 死我视频| 啊啊啊在线看| 国产探花日韩援交| 日韩欧美女优电影| 亚洲综合性网址| 呦呦影院| 欧美一区91大爱| 91国产丝袜美女| 日韩免费av片高清无码| 日韩啪啪啪啪啪| 久久国产999| 26uuu最新| 欧美成va视频网站| 99日视频在线免费| av在线观看不卡网站| 99精品丰满人妻无| 亚洲熟女av中文字幕| 久久久久久国产精品免费网站| 精品人妻1237| 99热这里都是精品| 青青伊人这里只有精品| 日日噜噜夜夜久久亚洲一区二区| 日韩一级久久毛片| 欧州色图区| 超碰成人最新最好看| 动漫片子网站3黄| 国产精品久久久久久久久久久久| 超碰在线人妻| 91色亚洲| 极品粉嫩一区二区| 男女日B国产| 欧美中文字幕一区| 成人免费性爱视视| 97国产精品国| 超碰欧美| 夜夜嗨AV蜜臀av| 欧美18老人禁| 国产超碰国产97| 91亚洲色图| 中文字幕大片三级狠狠干| 精品久久久久久久| 日本人体九九九九九九| 人妻精品综合中文字幕在线 | 国产精品懂色tv影视免费观看| 中文字幕 国产区| 高清肉丝中文无码| 中国大陆国产高清AⅤ毛片| 99热这里只有是精品10| 欧美日韩性爱无码| 日本最新1区2区3区| 日本在线播放不卡一区| 久啪视频| 久久99热这里只频精品6学生| 久久AV无码AV| 嗯嗯,好大,好爽,好骚| 男女性感激情网站| 大香蕉2017| 亚洲天堂,男人| 亚洲av性爱电影| 东北女人的毛片| 日韩av不卡在线看| 亚洲第二页| 国产亚洲一黄| 性爱视频免费网址| 日韩 欧美 国产 麻豆| 日本精品不卡一二三区| 男同专区一区二区三区在线| 亚洲综合网图| 91色色色| 2023天天操夜夜操| 日本中文字幕一区| 热久久这里只有精品| 尤物av网站免费在线播放| 啊啊啊快操我视频| 激情四射五月天| 99久久精品无码一区二区毛片免费| 亚洲资源网| 激情五月综合| 思思热国产在线视频| 日本 情色 1区2区3区| 资源在线观一 二| 久久男人精品| 国产传媒一区二区三区| 久久超碰爱| 久久三| 亚洲欧美第一页| 国产精品欧美激在线| 大香蕉黄色一区| 91超碰在线观看| 日本熟人妻中文字幕在线|...久久国产精品-国产精品_日本一区二区三区中文字幕 | 草b在线| 国产一区二区三区导航| 色综合加勒比| 亚洲色天堂九9| 97久久超碰国产网站| 婷婷AV一区二区三区| 国产女同在线观看视频| 久热热| 久偷拍欧美日韩三区| 七久久久| 久久老子无码午夜伦不卡| 亚洲国产精品无码AV久久久| 超碰超碰超碰超碰的大鸡吧操黑丝袜 | 伊人丁香五月婷婷| 亚洲天天更新| 人妻精品一区二区三区| 黄色片G G G| 亚洲AV免费在线观看| 99热99在线| 日本成人电影资源网| 91天天| 9Ⅰ超碰| 黄色工厂这里只有精品| 在线免费试看60秒| AV在线资源| 18精品一区| 人人色97| 日韩一区二区精品视频| 2019久久久久久久久福利| 欧美视频一| 超碰九7| 亚州欧美在线| 天天综合~91| 另类专区加勒比| 高树玛利亚无码流出| 性色高清在线| 久无码| 97人肏| 一区二区激情国产熟女| 亚洲无码99| 男人的天堂一区三区| 亚洲福利中文字幕在线| 欧美亚洲中文字幕| av天堂手机版追回| 欧美日韩操操操| 色情婷婷久久五月天| 久久99999| 狠狠狠一区二区三区| yirendaxiangjiashipin| 欧美亚州手机在线| 欧美制服另类丝袜| 久久人妻丝袜一区二区三| 九九亚洲| 国产精品白虎| 蜜桃久久久久久久久久久久| 一区二区三区四区久久视1| 男人天堂久久日韩| 久久久婷| 91n免费处女| 国产精品一二三| 亚洲女人毛茸茸91| 久久久月天| 欧美啪啪色吧在线| 日韩A优精品在线观看| 91真人天天在线| 国产精品久久久久久久久久久久久久久久| 夜夜騷av、一區二區| 国产五码丝袜屁眼| 人人摸人人舔一区二区| 大香蕉2017| 2024年最新色情网站在线观看| 人妻一区二区三区四区视频| 99老司机精品视频在线观看| 国产v片在线免费观看| 国产女人极品高潮毛片| 久久亚洲av成人无码国产| 九月婷婷| 天美传媒在线一区| 久草色在线观看| 国产夫妻性生活视频| 久久↗↗| 超碰社区97| 久久夜夜| 久热香蕉精品在线视频| 思思热在线观看| 国产大片精久久久久久| 97就爱干| 久久久无码视频| 搡老人老9丨女老熟人| 在线另类| 91人妻视频| 密臀在线一区尤物| 国产午夜福利电影免费在线观看| 伊欧美综合视频| 九九毛片这里只有精品| 中国熟女网站| 精品78| 插欧洲美女欧美精品| 美女露胸露屁股| 97超碰总站| 亚洲丝袜诱惑| 色网1| 视频一区二区三区精品| 99日精品欧美国产| 国内毛片免费h片在线| 风间由美日韩欧美久久| 97人人模人人爽人人| 日本影视久久免费| 黄骗免费网站| 欧美麻豆成人同性GⅤ在线| 日本色婷婷| 91国精产品| 欧美欧美啪啪视频| 久久男女激情视频网站| 久久成年精品| 青草精品视频日本久久久久网站在线| 蜜臀AV午夜精品久| 国产亚洲精品自在线亚洲情侣| 成人综合网 欧美| 97精| 99久久婷婷国产综合| 欧洲精品一区二区三区| 国产狂喷潮在线精品| 五月天婷婷基地| 女上位精品在线| 人人做,人人操,人人摸| 天天综合,91综合永久| 亚洲中文字幕久久无码精品| 福利色色| 久久精品99| 波多野结衣一级视频| 99re6国产精品99re在线| 清纯唯美综合| 任你爽视频| 亚洲综合色在线| 国产精品干干干| 四虎884a| 奇米四色网| 成人天天看站长推荐| 国产粉嫩蜜臀av一区二区三区| 91欧美| 97人人夜| www久| 美女爽爽爽刺痛洞洞| 不卡一区二区日本视频| 九九九九九用不成了| 日本人妻中文字幕| 青青草视频久久久久| 亚州综| 野狼激情网| 亚洲综合首页| 免费视频在线观看啊啊啊啊啊| 欧美综合网在线| 成人黑料社久久| 国产视频第二页| 一区二区日韩欧美久久| 人妻91少妇| 思思热在线视频精品| 淫淫综合网| 一区二区不卡视| 9/A片 | 国产精品爽爽v| 中国黄色特级精品一区二区三区片| 天堂无码精品国产久| 好看的久久不射无码影视影院| 亚洲第一免费视频| 欧美亚洲厕所精品偷拍91| 日韩AV一起草| 婷婷激情四射| 亭亭丁香激情| 国产精品亚洲无码| 精人妻无码一区二区三区伊人直播 | 91 亚洲 欧洲| 欧美日韩另类在线播放| 色拍偷亚洲| 国产无套粉嫩白浆在| 亚洲色阁| 午夜啊啊啊| 中国探花熟女| 天天综合欧美| 熟女欧美日韩综合婷婷| 草莓精品视频| 大屁股国产在线视频| 首页亚洲国产高跟丝袜诱惑视频 | 2017大香蕉国产精品久久| 加勒比久久综合网高清| 殴美色网| 夜夜高潮夜夜爽| 亚欧无码在线| 国产无码精品久久久久久| 亚洲区限制级| 欧洲色色| 操逼天美3区| 91白虎| 91爱欧美| 男人亚洲91首页在线| 人人看欧美性爱| 高清无码人妻久久久一区二区三区aⅴ| 亚洲天堂区| 中文字幕乱在线伦视频中文字幕乱码在线| 一本色道久久综合狠狠操| 97香焦色区| 在线无码操| 天天噜| 日本三级韩国三级美三级91| 中文字幕在线观看丝袜| 国产亚洲日韩在线三区黑人| 91中文字幕制服丝袜免费视频| 国桃视频产巨乳精品一区二区在线| 99久久婷婷| 懂色av色欲av蜜臀av| 日本女人久久久| 久久精品视| 自拍视频大全亚洲专媒视频/一区二区三区| 国产在线视视频有精品| 91在线精品一区二区三区| 超碰吊日色| 情侣操 逼视频99| 欧美高清性猛交| 色情成人五月天| 浪人综合网| 18禁在线视频| 综合久久9| 97在线视频网站| 精久久久| 久久精品国产久精国产| 蜜臀AV成人精品蜜臀AV久久| 色精品极品| 五月天久久久| 成人免费不卡在线视频| 国产对白刺激视频| 高精欧美色| 大逼色网站| 亚洲人精品久久久| 熟女高潮合集-永久久久-成人AV| 色哟哟-国产专区| 国产精品2020| 久久久久久性爱片| 国产av尤物| 久久9视频| 激情五月激情综合网| 把腿张开老子CAO烂你| 国产女人和拘做爰视频| 在线午夜成人无码视频| 78久久| 亚洲不卡三级手机播放| 91处女在线观看| 无码78| 搡老女人老91二区| 午夜性刺激视频免费观看| 久久久久久综合久久伊人蜜月| 夜夜操夜夜高潮夜夜爽国产精品区| 熟女高潮合集-永久久久-成人AV| 嗯啊免费视频| 欧美日韩高潮喷水91| 思思热在线视频精品| 91狠狠综合久久久久久| 国产树林里野战在线看| 国产69精品久久久久99尤物| 日韩精品人妻一| 九月丁香婷婷色| 强奸乱伦亚洲第一页| 亚欧免费| 波多野结衣之双飞调教在线播放| 热无码中文亚洲H一道本一区二区| 毛片一区二区| 国产精品一区二区手机看片| 日韩AV无码网站| 国产精品探花视频| 人人摸人人摸人人干| 亚洲少妇中文字幕网址| 久操精品网| 五月天丁香网| 六六久久日韩不卡| 91n美女视频| 国产成自自拍在线观看| 91激情国产| 亚欧韩av| 天天干嫩逼网| 欧美,亚洲,日韩,v,天堂,手机在线观看| 在线人妻熟女一区二区三区四区五区| 熟女网站最新| 日韩中文字幕av在线播放| 青青草日本中文字幕| 精品人妻无码一区二区三区不卡-精品人妻无码一区二区...|精品少妇一区二区三 | 91亚洲在线| 高清有码一区二区| 亲子敌伦对白在线播放| 亚洲欧洲综合av在线| 爱媛媛久久国产福利| 可以看的av| 日少妇亚洲版| 亚洲精品九九九九九九| 无码天堂| 风流老熟女一区二区三区l| 97人人模人人爽人人| 情色五月天久久久| 在线小说视频一区| 亚洲图片欧美| 国产女人和拘做爰视频 | 中文字幕乱妇免费视频| 日韩欧无码一区二区三区免费不卡| 边做饭边操逼逼| 国产色呦呦| 殴美牲| 亚州高清色综合| 亭亭在线资源| 九九综合九九综合| 秋霞影音一区二区三区| 小泽玛利亚一二三| 动漫av中文| 99热销国产这里有精品| 亚洲人妻中文高清| 射 色综合| 国精综合一二三区影视| 伊人国产AV| 亚洲一曲日韩精品| 亚洲日韩一区电影| 九九综合网| 免费中文综合精品| 91精品综合久久久久久五月丁香| 天堂射| 国产呦精品系列在线观看| 嫩草一区二区在线观看| 内射白嫩美女| 青草伊人久久| 性暴力欧美猛交在线直播| 91精品黄在线观看| 加勒比海成人视频网 | 欧美亚洲清纯| 色在线综合| 亚洲人成色9999精品久久 | 日本丝袜美腿人妻九九| 97伦综合| 欧美亚洲日本视频久久久| 天美传媒在线一区| 国产精品久久久| 婷婷色导航| 欧美人人天天网| 国产女s强制榨精视频| 蜜臀av在线播放一区二区三区| 天天综合AV| 亚洲欧洲无码一区夜| 涩五月婷婷| 久久精品国产99国产精品亚洲| 欧美性生活男人的天堂| 久久曰曰| 一区二区三区黄色片a| 人妻大香蕉| 色五月婷婷麻豆在| 黄片视频,下载| 中文字幕免费观看| 网页导航五月天免费一二三区 | 中文字幕第2页| 亚洲精品视频在线播放| 亚洲操操操无码| 岛国艾薇凹凸视频天堂| 久久久久9999精品九九九| 伊人操你| 日韩 成人 有码| {男男暴菊gay无套网站| 十八禁网站在线| 快灬快灬 一下爽蜜桃在线观看 | 3P丝袜熟女 色综合| 婷婷久草| 久久中文字幕在线观看| 思思热在线视频精品| 外国91| 夂久色| 人人妻人人爱人人玩| 熟妇在线视频一区二区| 亚洲人妻在线精品| 青青草日逼视频| 神马久久久久久久| 日韩去日本高清在| 亚洲小说视频| 92福利社视频| 精品福利| 亚熟hd视频在线| 国产精品免费美女视频| 亚洲人精品午夜不卡| 日本久久天堂| 亚洲熟妇A V黑人| 婷婷综合久久| 九九九久久久| 嗯啊免费视频| 国产中文大片资源中文字幕 | 超碰国产精品无码| 91老司机在线视频免费观看| 亚洲乱码精品一区二区| 日韩专区数据列表-第3230页-精品国产一区二区三区香蕉 久久99熟女人妻中文字 | 亚洲密乳AV| 青青草亚洲一区 | 精品九九九九九九九| 多毛小伙内射老太婆| 热久久无毒不卡| 五月婷婷激情综合| 亚洲欧洲成人在线电影| 97免费视频在线观看视频| 九九综合久久| 午夜爽爽爽| 自拍亚洲综合| 成人精品在线| 天堂v无码免费视频| 色爽——AV| 亚洲天堂综合AV| 色哟哟综合| 青青草女人天天干| 亚洲人久久久久日| 爆乳免费黄网站| 天天色天天干天天射| 欧美成97爱| 久久久久9999妇女| 一区二区三区成人高清视频| 亚洲91综合| 婷婷五月天影院| 日韩综合无码色欲vv| 视频不卡中文字幕| 久久久久网站-538在线视频-欧美永久乱码 | 久草草一二三四区久久| 久久女婷| 一本色道久久天天射天天干| 超碰99在线| 久久鲁夜| 丁香五月天视频| 天天色综亚洲91污| 欧美影院一区二区三区| 国产AV线| 久久久专区| 国产超碰国产97| 一级特级aaaa毛片免费观看| 超碰在线人妻中文字幕| 97精品视频在线| 久久久久久久久久久久黄色| 国产精品青青草| 亚洲AV永久无码一区仙野| 自拍偷拍草一草| 黄色视频高清无码网站| 91无码人妻精品一区二区三区蜜桃 | 97在线视频观看| 自拍啪啪视频| 色777999综合| 麻豆伊人网| 久久综合18p| 男人的天堂在线有码| 在线观看综合精品亚洲| 黄色大片免费在线| 亚洲中文字幕精品一区| 亚洲色婷婷综合久久一区二区三区| 国产精品高潮久久AV| ,国产乱人伦精品一区二区三区| 熟妇操花| 黄色AAAAA欧美| 国产 日韩 欧美高清| 91免费看一区二区三区| 日韩精品人妻一区二区| 男人的天堂VA| 欧美九一精品久久久熟妇| 国产白领连续中出在线播放| 今日头条成人一区二区三区四虎精品| AV 少妇 人妻 偷拍| 粉嫩绯色AV一区二区在线| 国产精品无码AV网站| 神马久久久久久伦理片| 欧美大波激情xxxx| 日本成人免费一区二区三区| 97在线青| 怡红院一区二区熟女人妻| 99国产精品视频尤物| 无码精品久久| 亚洲熟女精品| 日韩免费高清大片在线| 免费A片三p视频| 久久 国产 无码| 午夜视频黄| 超碰97 线线 在现| 超碰人妻97| 超踫中文字幕| 国产精品爽爽va在线观看98| 欧美一区二区亚洲天堂| 91成人精品在线播放| 精品无码久久久久久国产浪潮| 18禁免费视频| 国产精品呦一区二区三区| 亚洲欧美日韩精品久久久一区二区 | 在线视频97| 男人天堂网站| 亚洲高清欧美总合| 免费在线看黄片av| 精品人妻一二三| 91色花堂| 蜜臀无码视频在线观看| 国内偷拍精品一区二区| 一区二区三区黄片免费观看| 四虎国产精品永久地址入口| 日韩人妻一二三区视频 | 亚洲色图 欧美| 极品销魂美女一区二区| 天堂无码精品国产久| 夜间福利片1000无码| av天堂5| 国产精品一级特黄aaa大片在线观看| 被男人吃奶很爽的毛片| 日本免费不卡二区| 熟妇人妻一区二区| 久久精品超碰| 日韩成人在线性爱视频| 人人射人人操人人摸| 久久久久久久人妻| 美女露胸露尿口| 在线观看 99热| 亚洲熟女人妻中文字幕一区二区|