国产成人欧美一区二区三区vr_久久国产精品人人爽人人爽_国产精品永久免费播放_肉欲啪啪a∨无码精品一区二区_国产超短裙jk丝袜在线_亚洲AV片高清资源在线观看_国模无码一区二区三区久久_国产成年人未进视频_中文字幕无码精品夜_一区二区三区在线视频免费看_亚洲成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
返回資訊列表
色99在线| 高精欧美色| 抽插无码高清一区| 色哟哟AⅤ| 久久久一区二区三区麻豆| 中字幕人妻一区二区三区| 强歼乱伦资源网| 俞拍久久国应视频| 中文字幕欧洲有码| 欧美另类天堂| 在线天堂资源亚洲| 少妇99| 后入美女国产| 人人人人人人少妇| 亚洲欧美大| 99无码视频| 日韩无码黄色片| 国产肏逼网站| 美女91AV| 性欧美| 青青草大香蕉在线视频| 高清肉丝中文无码| 91丝袜熟女| 欧美有码激情视频一区二区三区| 国产一级αv免费看片| 欧美激情久操网| 日本一卡二区在线| 欧美一区二区三区成人性生活| 亚洲综合在线高清| 麻豆国产原创AV色哟哟| 日韩精品三级片长长久久| 亚欧美天堂在线| 激情六月天| 综合色图区| 丰满人妻一区二区三区大胸懂色| 亚洲天堂 视频你懂的| 东北丰满熟女国产一区| 久久精品国产亚洲AV无码做| 精品国产91av一区二区三区 | 国产精品久久aV| 久久久9999| 欧色网址| 99久久精品国产系列| 深夜国产福利| 麻豆久久精品亚洲精品88| 加勒比海人人操超碰在线| 亚洲第二页| 人人妻人人色一区二区三区| 亚洲欧美91| 亚洲欧美另类小说| TS人妖另类精品视频系列| 亚洲?V高清一区二区三区尤物| 日韩无限资源| 人人妻人射| 啪啪资源网| 久久久久亚洲Aⅴ无码| 99在线无码精品秘 入口黑人| 免费在线观看国内色片网站网址| 深夜激情无码| 九九热精彩视频| 亚洲 另类 丝袜 自拍 动漫| 欧美色蜜桃97| 国产精品人妻无码久久久老鸭窝| 在线综合 亚洲 欧美中文字幕| 亚州免费啪啪视频| 久久性爱城| 淫淫总合网| 日韩无码AB| 国产蜜臀精品一区二区尤物| 欧美人黑A片无码免视费| 肏逼视频日本| 99久久精品国产高潮| 五月天色五月| 日日干男人的天堂| 亚洲av青草久久一区二区| 日韩亚洲中文有码视频| 99热9| 超碰亚洲欧美日韩无| 美性中文综合网| 亚洲另类色综合网站| 国产一级内射高清视频 | av在线人气| 亚洲一区制服诱惑| se吧提供国产乱老熟视频胖女人| 亚洲天堂区| 天天内射| 一级毛片电影免费看| 日韩不卡毛片Av免费高清| 99热这里只有精| 精品人妻视频一区二区三区蜜桃视频| 国产精品网址| 婷婷视频在线免费观看| 丰满搜索结果 -第18页- 久久高清无码| 色九九九九| 狠狠躁伊人中文字幕| 亚洲精品乱码线路中文字幕 | 精品福利| 九月丁香婷婷| 中文精品少妇天堂| 中文字幕人成乱码熟女香港| 97二区四区| 97国产精品在线观看| 日本羞羞的视频在线播放| 日本在线一二| 97伊人超碰| 秋霞一级A片黄色视频| 国产熟女少妇一区| 美女诱惑一区| 红杏大香蕉| 97超碰国产亚洲精品| 国产亚洲福利第一页丝袜| 久热91| 拍拍拍拍大尺度黄色三级片拍拍拍拍拍照| 伊人精品久久网站| 色眯眯射| 囯戸精品高潮呻吟旡码| 日本有码影片下载 | 欧美拳交在线播放| 久久69| 国产少妇肉丝在线观看| 综合久久2017| 色性荡荡荡荡视频| 精品视频在线观看精品| 夜夜高潮夜夜爽高清视频一| 牛牛AV人人夜夜澡人人爽| 综合激情婷婷| 日韩肏逼视频| 天天干一区二区| 91夜色| 亚洲天堂综合AV| 偷拍盗拍亚洲色图图片| 亚洲色图 欧美热图 清纯唯美 另类自拍 | 国产白领连续中出在线观看| 性videos欧美熟妇hdx| 中文字幕精品人妻丝袜| 国产免费一区在线观看| 久久精品无码专区| 人妻久热在线| 国产日韩欧美亚洲精品95 | 综合亚洲欧美精品日韩?v| 欧亚乱色熟一区二区三四区| 飘花国产午夜精品不卡| 2026国产精品视频| 国产精品免费视频不卡| 手机在线免费看的av| 精品亚州18| 午夜一区二区三区国产| 加勒比久久av| 日韩专区数据列表-第3230页-精品国产一区二区三区香蕉 久久99熟女人妻中文字 | 桃花色涩综合影院| 秋霞Av理论一级在线| 老熟女91av| 小视频国产| 久久人体一区二区| 欧美78| 99热超碰在线| 少妇高潮流水av免费| 无毛精品| 97精品国产97久久久久久免费| 亚洲欧美在线观看无码| 久九九九九九九九热| 91爱综合| 老熟女乱子伦中文字幕一区二区| 亚洲婷婷丁香在线| 亚洲脚交| 色眯眯av| 亚洲精品97中文字幕| 色色色网站| 超碰人妻天天干| 亚洲精品电影| 蜜臀99久久精品| 九九久久久久久爱| 曰韩av中文字幕专区| 亚洲中文字幕在现观看| 亚洲少妇综合| 欧美青青视频| 久久天天躁日日躁狠狠躁 | 超碰午夜在线| 久久这里只| 欧洲精品网| 久久久蜜桃一区二区三区| 国产AV色黄看到爽| 极品另类| 欧美亚洲自拍另类人妻| 成人国产视频在线观看| 可乐操亚洲蜜911| 久久m| 欧美亚州手机在线| 日韩欧美视频青青| 综合激情五月天| 一级啊性爱在线视频| 欧美中文字幕日韩在线| 黑人免费福利视频| 国产午夜精品理论片一二三区区| 亚洲日韩国产精品| 亚洲无992tv| 午夜九九九九九九| 欧美激情区| 天堂精品一区| 桑老女人九区| …中文字幕亚洲乱,97人妻无码费视… | 91在线免费精品视频| 久热99999| 亚洲999综合| 亚洲欧美国产中文字幕| 午夜精品久久久久久久99热影院| 超碰97资源中文字幕| 日韩一级二级| 人妻日日夜夜精品| 97欧美精品综合| 人妻美腿丝袜制服诱惑综合天堂-| 五月婷婷色| 男人兔费天堂| 欧美熟女妇同| 蜜臀AV成人精品蜜臀| 欧美性暴力猛交XXXX | AV有码在线| 91蜜桃传媒精品久久久一区二区| 九九热精品视频六| 丁香婷婷五月| 综合欧美日韩在线观看| www.激情| 中文字幕亚洲欧美在线不卡| 天天弄欧美| 麻豆AV短剧| 久久超碰98| 91女优在线观看| 久久久天美| 变态另类专区| 色吧91| 一本色道久久天天射天天干| 人妻精品一区二区在线| Julia在线播放亚洲久久| 热天堂一区二区| 久久精品国产99国产精品亚洲| 久久久九九九九| 久久久久久裸体| 精品人妻一区二区三区蜜桃视频| 久久久久久久强迫| 国产 日韩 另类 视频一区爱| 黄色av一区二区在线| 欧美色偷拍 | 青草影院内射高潮| 免费试看60秒| 久久久久久久亚洲Av无码| 破苞ⅩXXX性无码动漫无码| 国内三级自拍小视频在线观看| 天天综合色| 91人妻视频| 做爱A级亚欧| 人人透人人操| 久久久久ab| 亚洲精品97p| 国产一级舔足在线观看| 日本在线激情一区二区三区| 性生活无遮挡纯毛片在线看| 日日骚网站| 久久这里只精品免费福利| 插穴性爱视频在线观看| 一区久久久二区| 亚洲有薄码区久久在线一区| 欧美少妇性爱网站| 国产传媒日本欧美专区| 992视频一区| 波多野42部激情无码喷潮| 欧美性爱伊人| 风月影院男女十八禁| 国产性爱强奸乱伦大全| 97人人操人人干| 好舒服视频| 亚洲影院无码在线| 婷婷中文字幕| 熟女熟妇伦久久影院毛片一区二区 | 日本一区二区中文字幕久久| 超碰九色| 日本天堂在线播放| 欧美极品性爱天天射| 亚洲中文制服诱惑| 99久久无码| 这里只有精品视频| 欧美伊人电影| 亚洲日韩精品在线播放| 久久精品成人| 国产午夜无码片在线观看影视 | 在线αⅴ| 免费农村成人少妇人妻Aa一区二区视频| 日韩射图| 伊人女女资源在线观看| 天天日骚逼熟女| 国产乱色国产精品免费视| 九九九久千久久激情蜜桃在线看 | 欧美国产日韩高清在线| 在线小视频| 日本欧美韩国国产在线| 欧美在线啊啊啊| 久久性爱视频免费看| 性欧美另类高清| 婷婷色香伊人| 国产馆极品诱惑| 91爱| 国产天天骚| 久久久久久99AV无码免费网站| 蜜臀av在线播放一区二区三区| 精品二区久久| 色五月婷婷五月天| 亚洲天堂在线怕怕视频| 欧美色图 人妻| 黄色av网站在线播放| 欧州激情视频在线一区二区| 视频黄色国产一级| 淫穴高潮色图| 91精品丝袜久久久久久| 五月综合视频| 亚洲无码精品AV久久久| 九九九影院| 黄色AAAAAAAAAAA大片| 狠狠干妹子| 色色婷婷五月天| 亚洲风情在线观看| 看黑丝美女操逼青青网站| 亚洲av无码国产精品字幕| 91新在线欧美| 欧美做爰无码A片视频| 亚洲色性| 9久久9综合| 岛国在线免费视频| 99re6在线视频播放免费精品| 很很干很很操| 中文人妻av高清一区| 麻豆区久久久久亚| 四虎永久在线精品免费网址| 老熟妇一区二区三区…| 九九热精品视频六| 国产盗摄美女如厕大神作品在线观看| 粉嫩av在线一区二区| 久久久久久99999国产精品| 国产亚洲精品玖玖玖在线观看| 快播电影网日韩新片| 欧美久久草熟女| 成人激情无码在线视频| 2019天天干| 欧美性视频二区三区| 婷婷五月天网| av无码av无码专区| 国产h小视频在线观看免费| 九九九久久久久| 精品人妻伦一二三区久久| 手机午夜电影神马久久| 人妻激情视频| silk lablo在线观看一区二区| 久久九九99| 亚洲国产成人精品久久久国产成人一区二区| 69丨亚洲丨精品丨入口免费播放| 精品亚洲国产成人AV制服丝袜| 日韩一级欧美一级国产一级台湾| 后入福利视频| 性欧美天天| 日本精品不卡一二三区| 国产v亚洲v日韩v欧美v片另类| 狠狠躁天天躁日日躁| 日韩中文字幕视频在线观看| 青娱乐福利99| 97爱综合| 久久九九97| 国产视频第2页| 亚洲 图片 综合91| 精品一区二区成人动漫| www.黄色在线| 成人精品久久久午夜福利| 男人综合网| 狠狠做深爱婷婷久久二区| 久久综合18p| 五月丁香婷婷色| 亚洲AV性爱电影| 2018天天日天天日| 2024年最新色情网站在线观看| 少妇大屁屁| 亚洲极品| 国产AV天美传媒一区二区三区| 性爱欧美五月| 美女AV一区二区| 亚洲综合另类欧美久久久| 亚洲高潮少妇| 性站 | 99www.bibizy香蕉资源国产一区二区三区高清| 嗯嗯嗯啊啊啊在线免费观看| 蜜桃久久一区二区三区| 97在线欧| 97色碰| 欧美性色网| 99久久免费看精品国产一区| 色狠狠一区二区三区香蕉| 伊人久日| a人欧美综合天堂麻豆| 国产午夜精品理论片一二三区区| 激情小说亚洲色图| 中文字幕第9页萱萱影音先锋| 国产粉嫩蜜臀av一区二区三区| 亚洲精品九九九| 午夜在线播放| 男女无套 免费网站| 亚洲综合影院| 成人无码在线超碰网| 香蕉黄色一级视频| 日韩99神马视频片| 啊啊啊啊啊啊啊啊啊啊在线观看| 97精品第3页| 777奇米影视777四色| 亚洲欧美91| 久久99国产精品| 国产精品不卡av免费在线观看| 国产丝袜美女在线一区| 黄色区免费观看中文字幕| 日美免费黄片| ,国产乱人伦精品一区二区三区| 91九九九逼| 天天日天天干少妇日| 色综合中文字幕不卡| www色色com| juliaann丝袜| 色 婷97| 成人十八禁日韩欧美一二三| 97欧美色| 亚州熟女乱伦| 你懂得91| 粘花网06av视频| 日本熟妇色熟妇在线视频播放| 亚欧操逼片在线观看 | 日本99久久| 中文字幕亚洲欧美在线不卡| 97爱爱官网| 男女做爰猛烈动高潮A片免费应用| 中文字幕亚洲热播人妻| 欧美一区二区在线资源| 亚洲美腿丝袜香蕉影视欧美成人| 日韩欧美亚洲自拍偷拍| 成人AV在线电影| 躁躁日曰躁2020| 国产91丝袜 在线播放| 国产AV色黄看到爽| 中文字幕二区日韩天堂| 天操天操夜操夜月操月年年操操| 伊色综合天堂色97| 伊人在线大香蕉视频久久| 亚洲阿v天堂在线| 综合久久欧美| 久久精品国产精品| 51国产午夜精品视频| 亚洲图片偷拍视频区| 日韩精品第3页| 96久久久久久久| 欧美日本一区二区a人| 日本九九久久99播| 综合网亚洲| 啊啊啊啊一区| 日日夜夜精品| 日韩激情毛片一级久久久| 五月丁香啪| 中出20p| 国产精品呦一区二区三区| 久久久久国产亚洲一区欧美色图日韩| 啊啊啊啊好爽好舒服一区二区易域| 十八禁成人网站在线观看| 欧美一二三区四五区| 欧美亚洲首页| 人妻少妇色综合| 九九五月天| A 天堂在线观看视频| 麻豆国产成人精品| 精品人妻一区| 亚洲91大片| 欧美成人一级免费电影| 亚洲偷拍欧美激情| 日韩一性一交一A片俄罗斯| 老师充足的奶水小说| 国产成人91一区二区三区| 麻豆天美国美国产AV| 日韩97P| 性欧美另类高清| 91亚洲网| 精品然女一区二区| 思思热影视| 久久精品99久久久久久| 国产AV超爽| 亚洲丝袜在线观看| 嗯啊不要啊在线 | 超清中文乱码字幕| AV老汉| 乱伦一区二区三区‘| 精品999日本| 日本色色色视频| 精品乱码在线观看| 天天肏夜夜肏| 黑人猛交| 亚洲欧美精品久| 丰满人妻大屁一区二区| 超97在线精品视频| 伊人久久88国产女| 极品综合| 婷婷精品国产欧美精品亚洲人人爽| 夫妻日逼| 久久久免费高清中文视频| 国产超碰人人操| 蜜臀一区二区三区亚洲最新章节在线观看 - 高清蜜臀一区二区三区亚洲全集播放 | 久久久久久久人妻| 免费?级毛片无码?∨蜜芽试看| 日韩美女高潮喷水视频| 色吧五月| 久久精品国产AV一区二区三区| 久啪| 国产欧美美女免费观看视频| 中文字幕一区电影在线观看| 97超碰这里只有精品| nuu12国产麻豆精品| 成人精品久久| 一区二区三区国产精产| 亚洲精品国语在线播放| 色婷婷网| 偷拍亚洲熟女视频播放| 97免费视频在线| 亚州人妻| 六月婷激情福利天堂69| 亚洲高清无码在线桃色| 国产综合日韩伦理| 国产精品爽爽va在线观看98| 丝袜亚洲综合| 密臀在线视频| 天天综合麻豆视频| 美女淫穴| 日韩在线女优天天干| 国产成人精品日本亚洲语言| 俄罗斯一区二区视频在线观看| 超碰99在线| 久久久九精品| 91天美传媒在线观看| 亚洲色人妻综合| 激情专区综合| 日本人人操人人操| 韩国黄片aaaa| ji熟女.com| 国产无码精品久久久久久| 蜜臀久久99精品久久久久久成人小说| 新视频sss国产| 人人妻人人操人人乐| 亚洲无码电影久久久| 丝袜综合色图| 97天天搞在线| 日本高清电影欧美色图| 欧美久久伊人| 欧美性生活免费网| 亚洲色图尤物视频| 欧美性爽xyxOOOO| 天天摸天天舔天天操| 欧美 传媒 麻豆 日韩 偷拍| 久久99热这里只频精品6学生| 日韩乱伦视频| 欧美大香蕉同搞| 欧美大波激情xxxx| 乱伦一二三区| 91AV入口| 乱伦一区二区三区‘| a片久久久久久久久久久久| 精品人妻久久久| 欧美一品道| 操操逼操操逼操操逼逼| 另类小说五月天| 日日AV加勒比| 久久手机视直播| 人人做天天爱| 有码人妻系列| 丝袜视频网国产90| 日韩电影中文字幕| 亚洲精品aa久久伊人| 欧美少妇大量自拍视频在线观看| 国产69精品久久久久99尤物| 亚洲第一成人影院色播| 黄色小视频日本txt| 懂色天天爱天天日天天射天天澡| 久久蜜色情在线视频xxx免费观看| 国产极品999| 蜜臀人妻少妇久久在线观看| 亚洲美女30b| 内射黑人| 日日躁狠狠躁天天躁精品| 老鸭窝日丰县女人| 午夜爽爽爽| 日韩小电影| 日韩激情无码影院| 人人操人人摸人人看人人干| 丝袜熟女一区二区三区| 亚洲天堂区| 九九九网页| 亚洲一区二区 麻豆传媒| 超碰97人人乐| 啊啊啊啊网站| 三级激情网站| 久久久无码国精品无码三区三区| 亚洲 欧美 中文 日韩超碰| 麻豆伊人网| 激情文学亚洲| 日韩性爱一级片| 天天日B夜夜干B时时操B| 五月丁香综合啪啪| 亚洲视频小说| 蜜屁av| 日婷婷| 亚洲 欧美日韩 另类| 91碰碰碰| www.男人天堂| 亚洲性天堂| 婷婷丁香九月| 成人三一级一片aaa| 日日夜夜干| 亚洲国产精品久久久久久久久久| 蜜臀久久99精品| 天天影视之亚洲综合网| 亚洲欧美日韩中文播放| 八人操人人摸人人看| 在线啊啊啊啊| 88在线一区二区三区| 国产AAAAAABBBBB| 婷婷色色网| 青青伊人加勒比海| 精品国模无码| 欧美十八禁在线看| 中国黑人三级片网站上区| 国产怡红院在线| 无码操逼网| 日本中文字幕高跟| 欧美少妇色图| 综合色色网| 欧美A√综合网| 国内偷拍精品一区二区| 首页亚洲国产高跟丝袜诱惑视频| 亚洲少妇激情一区二区三区| 精品高清av中文字幕| 嫖老熟女A片一二三区| 嫩草 人人网精品| 啪啪视频免费在线观看| 六月丁香啪啪啪| 大干人妻| 69精品久久久久中文字幕| 亚洲宅男天堂| 鸥美极品| 人妻 丝袜美腿 中文字幕| 欧洲射精91| a'v在线资源| 人人喜人人妻| 久久久96| 久久久精品成人国产| 亚洲激情深爱文学小说网站| 日韩无码黄色片| 亚洲综合射| 免费日韩黄片| 91爱欧美| 在线观看亚洲专区| 9999亚洲电影| 思思热久久成人| 97国产天堂岛| 亚洲黄色a级片| 久久一区二区加油站| 国产极品粉嫩馒头一线天av| 一二三啪啪专区| 激情小说亚洲| 在线天堂999| 超碰精品日韩欧美国产| 中文字幕人妻色偷偷久久皮| 日韩人妻有码免费视频| 一级黄碟| 久久99亚洲精品久久99果| 色97干| 99999精品视频| 一级性爱视频免费观看| 亚洲最大黄网| 不卡免费av在线播放| 久久精品午夜国产亚洲AV无码| 青青草国产亚洲精品久久| 12一15性XXXX粉嫩国产| 91久久久老司机| 人人操人人uiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii | 国产67194| 亚洲毛片基地专区| 色噜噜人妻丝袜AV资源| 人人操,操人人| 亚洲天天更新| 啊啊啊啊在线观看网址| HEYZO高无码国产精品227| 78m啪啪啪| 加勒比AV网| 国产一区二区av综合| 欧美姓爱综合网| 91艹逼精品| 91精品伊人久久久大香线蕉91| 欧美黄页| 蜜臀th| 99久久com免费视频′| 亚洲 日本 国产 综合| 精品人妻一区二区三区不卡断 | 日韩 成人 有码| 一本一道vs波多野结衣| 99国产精品| 精品无码人妻一区二区免费蜜桃| 一起草日韩| 亚洲国产综合图区中文字幕 | 九九九九九九九| 91亚洲人电影| 国内精品伊人久久久久影院会| 啊啊啊啊网站| 好色美女九七第一页| 一区=区三区视频| 五月天色色网站| 日韩三A大片在线观看| 色九久| 久久久久久少妇| 亚州情色j区| 中日韩欧美精品无码AⅤ一区二区| 亚洲资源一区| 日本不卡中文| 国产青青美女玩逼视频| 69综合网| 一区二区三区精品黑丝白丝酒店对鸡 | 99热精品国产| 视频二区美腿丝袜制服人妻欧美 | 800zy一区二区| www色日本| 综合影视国产无码| 国产肏逼网站| 蜜臀一区二区三区在线| 婷婷10月天青娱乐| 亚洲AV不卡在线观看| 自拍视频大全亚洲专媒视频/一区二区三区| 日本超碰在线国产一区| 中国东北熟女老太婆内谢| 国内一区二区免费| 亚洲欧美清纯| 99久久免费看精品国产一区| 午夜九九| 黄久在线| 国产吹潮女在线观看| 999综合色| 欧美国产有色电影| 日本999精品视频| 欧美香蕉视xxx| 亚洲18禁| 97精品视频免费| 夜夜高潮夜夜爽高清视频一 | 日韩欧美麻豆大片| 91美女丝袜诱惑视频| 国产精品成人在线| www.丁香五月| 日韩在线视频1234| 伊人综合色网| 日韩传媒在线| 99蜜桃臀亚洲成人在线观看| 亚州中文字幕超碰97| 九草在线大香蕉| 亚洲天堂资源| 熟妇女伦乱视频视频| 91精品丝袜久久久久久| 亚洲无码一区成人免费午夜| 欧美在线|亚洲| 久久久96精品| 国产丁香精品露脸视频| 狠狠爱大香蕉| 亚洲学生妹高清av| 日韩中文字幕人妻视频| 黄色区免费观看中文字幕| 欧美视频中文字幕区| 亚洲免费人妻在| 日本三级久| 麻豆区99999| 我爱搞逼综合网| 91在线国产后入风骚翘臀美女素人| 亚洲天天天| 在线 欧美 亚洲| 亚洲男人的天堂va亚洲男人社| 自拍第一页| 少妇天堂| 欧美日日操| 日韩在线观看中文字幕视频| 久久久久国产亚洲一区欧美色图日韩 | 亚洲自拍青操视频| 97在线观| 日日摸夜夜夜夜爽| 中文字幕成人| 大香网伊人久久综合网eew| 男人的天堂无码| 东北毛片| 性色av蜜臀av色欲aV| 国产精品久久久亚洲一区| AV高清一区| 日韩天天综合| 一级性爱视频免费在线| 亚洲AV无码国产成人| 亚洲有码 视频一区| 亚洲熟妇综合久久久久久| 91熟女丨老女人| 萌白酱自拍视频| 国产丝袜视频| 欧美综合狠| 国产1024在线播放| 亚洲日本韩国在线| 麻豆天美制片厂网站视频| 91无码精品| 国产精品亚洲一级av第二区| 99re这里只有精品中心播放 | 免费啪啪啪网站18岁| 97精品国产97久久久久久免费| 日韩丨制服丨中文|在线| 啊啊啊操死我| 五月丁香婷婷综合| 91久久国产综合精品| 男人的天堂 在线一区| 免费a在线播放v| 做爱福利视频一区二区| 天天日天天干少妇日| 久久精品性| 国产青视频| 国内偷拍精品一区二区| 丁香五月久久| 亚洲色天堂九9| 日本性爱欧美性爱| av在线人气 | 天综合网| 天堂av最新电影网| 免费操逼视频下载| 欧美亚洲涩涩| 欧美一级黄片视频在线| 久操视频免费在线观看| 九久9精品| 91干熟女| 一二区在线观看视频| 青娱乐国产盛宴视频| 玖玖爱一区在线| 91中出| 亚洲91色在线| 亚洲日韩美女丝袜美腿人妻视频| 婷婷在线视频| 97色诱| 天天操夜夜操狠很操| laoshunv91| 欧美一区二区三区互相| 99xav| 国产精品高潮呻吟av久久4虎| 9/A片 | www.yeyecao| 午夜精品久久久99| 天堂俺去俺来也www久久婷婷| 午夜免费视频1000| 欧美色图电影| 欧美综合在线91| 91精品老女人| 大奶啊啊好爽| 中文字幕天堂在线| 国产精品熟女AV中文字幕在线播放| 热99这里有精品综合久久 | 九九九九九九成人| 按摩中文字幕| 天天色播| 狠狠操狠狠操操| 丝袜熟女2P| 午夜精品久久久久久久久久蜜桃| 一区二区三区日韩欧美| 国产无码三级视频在线观看| 欧美色日本| 日韩卡一卡二卡三在线| 日韩欧美~中文字| 国产成年女人免费视频播放a| 国产一区二区久久| 欧亚乱色熟女一区二区| 超碰97首页| 伊人久操| 亚洲偷拍欧美激情| 92福利社视频| 日韩无码视频黄色| 免费国产| 亚洲激情综合| 久草免费在线视频| 丝袜狠狠草尤物人妻av91| 三级激情网站| 久久久久深夜无码| 英伦大奶子熟妇吊带| 性爱网站一区二区| 色网亚洲人| 婷婷丁香六月天| 大香蕉www.超碰| 人人操人人操人妻人| 男人下部插入女人下部| 92午夜免费福利视频| 亚洲熟女人妻中文字幕一区二区| 久久九七| 九九色色| 午夜精品五区| 日韩啪啪视频| 碰人碰碰人人开房人肉| 口爆综合网| 午夜国产成人福利视频| 超清福利精品视频在线| 精品国产乱码久久久久久日本公司| 免费看美国人人爽,人人操| 日本欧美韩国国产在线| 91精品网站| 91色综合色| 老师充足的奶水小说| 思思热在线| 亚洲一级性爱视频免费看| 九七超碰| 日本一线产区和二线产区伦理片| 2017大香蕉国产精品久久| 99久久婷婷国产综合精品草原| 草草影院最新网址| 中文字幕一区二区三区50路| 中出20p| 日本新免费二区三区| 夜色五月天| 99久久网站| 秋霞一级A片黄色视频| 久久久久国产精品久久久| 久久久久久久久国产| 国产偷仑| 国产精品色| 欧美自拍偷拍免费观看| 人人操,人人插| 日韩欧美麻豆| 免费成人在线熟妇网| 嗯嗯嗯嗯啊啊啊好紧好大| 欧美做爰无码A片视频| 无码日韩人妻av一| 丰满人妻一区二区三区免费| 伊人性在线视频| 91在线丝袜| 爱妻综合网| 久久AV色| 日韩资源网| 很很很很操| 亚洲性综合9| 1956日韩精品| www四虎| 亚欧精品久久久久久久久久久| 五月丁香综合激情| 秋霞一级视频在线观看免费| 丁香五月激情综合国产| 国产精品福利视频播放| 日韩激情毛片一级久久久| 国产亚洲日韩欧| 91这里只有精品| 26UUU欧美日本| 人妻天天爽天天爽三区| 成人a v在线播放免费| 超碰97日韩| 92久久| 日本一级特级毛片视频| 亚洲 暴爽 AV人人爽日日碰| 日本操逼aaaaa| 国产在线视频午夜精华在| 日欧操屄| 人妻系列无码专区中文有码| 久久久久国产精品喷潮免费观看臀 | 狠狠躁久久躁| 久久中久文96| 国产农村妇女毛片精品久久| 97超碰超碰| 国产黄色小视频网站| 这里是精品| 亚洲天堂自拍| 97超碰色中文字幕| 久久无码精品| 白丝一区| 国产高清成人mv在线观看| av日韩在线观看电影| 九九热精品视频在线观看| 白丝1区2区3区| 久久中出在线| 欧美性第1页| 五十路三区在线| 成全在线观看免费观看| 色欲久久综合| 九九热免费国产视频婷婷伊人五月| 伊人网在线观看| 99国产精品自在自在| 99热这里只有精品18| 免费观看国产小粉嫩喷水精品午| 人妻系列无码专区中文有码| 国产亚洲人妻综合日韩 久久| 啊啊啊啊啊啊啊国| 天天情欲宗合网| 性综合网| 亚洲精品xxx| 日本久久久久久久久| 久久久熟妇熟女国产| 超碰色图| 波多野结衣先锋影音| 日韩欧美中文日韩欧美色| 超碰碰碰碰| 亚洲综合校园春色| 啪啪啪综合| 成年人性爱日韩| 欧美少妇第一页| 97少妇人妻中文字幕久久| 国产狂喷潮在线精品| 国产精品一区二区三区,亚洲综合 性开放中文AV高清无码免费看 | 一区二区 日韩 欧美 国产 传媒| 亚洲第一男人天堂| 欧美极品美女aaaaaa级黄片| 色综合尤物| 佐山爱中文字幕| 99国产精品| 啪啪91| 91在线/欧洲| 伦激情人妻另类人妻| 性色av蜜臀av色欲aV| 黄色乱论网站| 天天综合色图| 国产精品极品美女视频| 国产福利夜| 91美女高潮| 亚洲人妻中文高清| 天操老女人| 亚洲 暴爽 AV人人爽日日碰| 九月丁香婷婷| 五月天婷婷在线看| 84YTCOM性无码| 婷婷五月丁香五月| 99热导航| 色欲三区| 99操| 日韩精品在线视频,日韩精品……| 日韩另类| 精品国产99999| 国产精品无码在线| 操曰本熟女| 久久伊人最新网址视频| 色播丁香| 大逼色网站| 91精品人妻电影| 中文字幕二区| 欧美极度丰满熟妇hd| 青青草成人视频在线观看二区| 国产精品白丝在线播放| 日本97久久久精品| 69麻豆天美| 夜夜夜久久| 国产丝袜啪啪| 五月丁香激情综合| 国精综合一二三区影视| 2018天天日天天日| 91女人的网站| 91一区二区三区蜜桃| 丰满少妇一区二区三区专区| 97九色| 1234区中文字幕在线观看_青青草国产在线_日韩一区二区 | 91成人久久| 中文字幕在线第二页| 九九视频黄色片| 性色av婷婷久久一区二区点复制| 性色av蜜臀av色欲aV| 国产v片在线免费观看| 天天天天天天天天综合| 天天做日日做天天欢。| 91 丝袜在线观看| 中文字幕日本久久| 蜜臀网 一区| 亚洲 图片 综合91| 91人精品妻入口| 97超色| 日韩AC| 亚洲av青草久久一区二区| 玖玖蜜臀资源网| 啪啪啪东京| 拍拍拍拍大尺度黄色三级片拍拍拍拍拍照| 尹人免费观看视频在线| 久久熟女久| 色婷婷av在线观看| 日韩欧美日韩| 精品九九淫乱男| 狠狠色色| 日韩欧美性爱电影在线观看| 欧美成人色| 久久激情五月| 亚洲精品久久久久毛片A片拉屎 | 欧洲精品网| 在线精品福利免费播放| 天天伊人| 色哟哟av网址| 婷婷丁香六月天| 国产对白刺激视频| 97人人爱人人乐| 中文字暮97| 亚洲色图A| 美女十八禁| 精品欧美日韩在线观看| 欧美老妇女内射网址| 色噜噜人妻av中文字幕| 日本三级韩三级99久久| 人妻人人操| 可能人人看人人摸| 国产精品96| 国产免a费看黄片在线| 亚洲第一免费视频| 免费网站观看www在线观| 人妻色偷色噜| 欧美精品自慰系列寂寞少妇| 欧美性战999| 91另类| 日韩黄色成人性爱| 婷婷性网| 日韩成人性爱AV| 另类图片亚洲加勒比另类图片亚洲加勒比另类图片亚洲加勒比 | 午夜福利 成人 91| 一区二区三区 日韩欧美| 久热这里| 欧美亚综合色图| 一区二区三区国产在线播放| 天天看特黄的免费网站| 人人操人人uiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii | 久久黄黄黄| 特级大荫道BBwBBwBBW| 国产欧美日韩一区二区三区| 超碰2017| 黄色交缠性感爆操91国产精品免费一区二区三区| 亚洲色啪| 欧美性爱十八禁| 天天干1区2区在线| 欧美暴力猛交| 欧美成人9797| 午夜精品99久久久久传媒| 国产精品无码在线| 天天日天天干天天色| 黄页| 国产精品禁久久久精品| 97丝袜亚洲在线播放| 91人妻视频在线| 久久久久无码| 五月综合久久| 亚洲综合小说另类图欧美视频激情小说色五月天 | 久久久亚洲精品中文字幕人妻| 少妇一区二区三区在线观看| 欧日a| 青草伊人久久| 亚洲不卡av在线| 啪啪视频亚洲第一| 超碰人人超在线观看| 欧美一区二区三区四区综合| 一个人免费视频观看在线WWW| 99人妻| 国产精品不卡少妇白| 亚洲交性| 午夜毛片亚洲精品片国产久久久| 伊人视频| 一区二区亚州激情久婷婷欧美| 熟妇精品juliaannAV| 亚洲码和欧洲精品激情系列| 草草影院在线视频| 日夜啪电影| 久久色一区| 青青操97| 影音先锋一区二区在线资源| 蜜臀久久久国产| 久久精品高清无码一区| 91精产一区二区三区|