免费国产精品自在自线-91精品国产色综合久久久浪潮-99热久久免费频精品-国产精品国模在线观看-久久亚洲国产精品成人?V秋霞-久久国产一级A片免费播放-亚洲国产欧洲综合97久久-久久国产白嫩美女呻吟高潮

ARTICLE DETAIL

資訊詳情

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

CEF二進(jìn)制包解析與集成實(shí)戰(zhàn):從文件名到桌面應(yīng)用嵌入

CEF二進(jìn)制包解析與集成實(shí)戰(zhàn):從文件名到桌面應(yīng)用嵌入 簡介本資源是面向C桌面應(yīng)用開發(fā)者的CEFChromium Embedded Framework二進(jìn)制開發(fā)包專為在Windows 64位平臺(tái)集成現(xiàn)代Web渲染能力而設(shè)計(jì)適用于需嵌入瀏覽器引擎的客戶端軟件、跨平臺(tái)工具或富Web交互型桌面應(yīng)用開發(fā)。壓縮包共972個(gè)文件涵蓋502個(gè)頭文件.h、327個(gè)C源碼.cc、56個(gè)資源包.pak、14個(gè)動(dòng)態(tài)鏈接庫.dll及配套文檔與圖標(biāo)資源完整提供CEF 90.5.9版本運(yùn)行所需全部組件包體大小238.57MB。已有944人學(xué)習(xí)下載表明其在實(shí)際工程中具備較高參考價(jià)值。開發(fā)者可直接基于該包構(gòu)建支持H.264硬解、HTML5音視頻播放、Blink渲染引擎及Chromium 90.0.4430.85全部Web特性的定制化瀏覽器應(yīng)用無需自行編譯龐大Chromium源碼預(yù)覽中v8_context_snapshot.bin、gtest-all.cc等文件也印證其包含V8上下文快照、單元測試框架及典型API使用范例顯著降低集成門檻與調(diào)試成本。 拿到cef_binary_90.5.9gd330790chromium-90.0.4430.85_windows64.zip這個(gè)文件很多人的第一反應(yīng)是這一長串名字看著就頭疼解壓出來目錄還特別亂到底哪個(gè)文件能用其實(shí)這種命名方式本身就是一份說明書。cef_binary是 Chromium Embedded FrameworkCEF的預(yù)編譯二進(jìn)制包版本是 CEF 90.5.9對(duì)應(yīng)底層 Chromium 90.0.4430.85目標(biāo)平臺(tái)是 Windows 64 位。簡單說這是一臺(tái)“嵌入式瀏覽器發(fā)動(dòng)機(jī)”你可以把它塞進(jìn)自己的桌面應(yīng)用里用 Web 技術(shù)寫界面同時(shí)保留原生程序調(diào)用系統(tǒng)資源的能力。實(shí)際項(xiàng)目里很多即時(shí)通訊工具、工業(yè)軟件、游戲客戶端、甚至一些開發(fā)工具內(nèi)的代碼預(yù)覽窗口都是這么干出來的。這篇內(nèi)容就是圍繞這個(gè)壓縮包展開我會(huì)從文件名解析到實(shí)際集成把 CEF 這套東西講清楚也給正在研究它的朋友一些能直接上手的參考。1. 項(xiàng)目概述與版本信息解析1.1 從文件名能讀出什么很多人下載 CEF 二進(jìn)制包時(shí)只看得到“這是最新版”或“這是 64 位版”其實(shí)文件名里的每個(gè)字段都有具體含義字段含義cef_binary這是官方發(fā)布的預(yù)編譯二進(jìn)制包用于在你的應(yīng)用里內(nèi)嵌 Chromium90.5.9CEF 分支版本號(hào)即該二進(jìn)制包對(duì)應(yīng)的 CEF 接口版本gd330790這個(gè) CEF 版本所對(duì)應(yīng)的提交哈希前綴可以理解為一個(gè) git commit 標(biāo)記chromium-90.0.4430.85底層 Chromium 版本決定網(wǎng)頁渲染能力、V8 引擎特性、安全修復(fù)程度windows64目標(biāo)平臺(tái)Windows 64 位官方在打包時(shí)會(huì)按照cef_binary_{CEF版本}{提交哈希}chromium-{Chromium版本}_{平臺(tái)}的規(guī)則命名。這個(gè)規(guī)則很實(shí)用因?yàn)橹豢次募憔湍芰⒖膛袛喑鲞@包對(duì)應(yīng)的是哪條分支、哪天構(gòu)建的、能不能在目標(biāo)系統(tǒng)上用。如果你是和團(tuán)隊(duì)協(xié)作看到這個(gè)文件名就能大概估算出瀏覽器的能力范圍不用解壓之后再去查版本號(hào)。CEF 版本和 Chromium 版本不是嚴(yán)格同步遞增的而是 CEF 會(huì)基于某個(gè) Chromium 版本做二次封裝。Chromium 90 對(duì)應(yīng)的是 2021 年前后的特性比如 WebRTC 已經(jīng)很成熟WebGL、WebGPU 早期能力也在推進(jìn)。但相對(duì)于現(xiàn)在的 Chromium 120它在渲染性能、CSS 新特性、安全漏洞修復(fù)上明顯落后。所以如果只是做一個(gè)內(nèi)部工具或者有舊系統(tǒng)兼容需求選擇 Chromium 90 也不算錯(cuò)但如果你要面向公網(wǎng)用戶就需要評(píng)估好安全風(fēng)險(xiǎn)。1.2 CEF 在桌面端扮演什么角色現(xiàn)在做桌面應(yīng)用有很多條路可以選用 Electron 把 Chromium 和 Node.js 一起打包用 WebView2 依托 Windows 自帶的 Edge 內(nèi)核也可以直接用 CEF 自己集成。CEF 的優(yōu)勢(shì)在于“定制性極強(qiáng)”它把自己定位于一個(gè)嵌入式框架提供了大量 C/C API你可以控制瀏覽器進(jìn)程、渲染進(jìn)程、資源加載、JavaScript 交互、甚至自定義協(xié)議。打個(gè)比方Electron 像是一套精裝修的套房拎包入住很方便但你想改造承重墻就沒那么容易CEF 更像是一套毛坯房水路電路都給你預(yù)留好了位置但怎么裝修、用哪些材料全由你說了算。你在做游戲客戶端、硬件配套軟件、國產(chǎn)化應(yīng)用、或者需要深度集成瀏覽器能力的工具鏈時(shí)CEF 往往比 Electron 更合適因?yàn)樗亩M(jìn)制體積更可控進(jìn)程模型也更靈活。我見過不少公司拿 CEF 做在線文檔客戶端、IM 聊天窗口、監(jiān)控大屏、工業(yè)組態(tài)軟件核心訴求基本一致界面是 Web 的能力是原生的。CEF 能讓你在同一個(gè)窗口里同時(shí)渲染本地導(dǎo)航欄和遠(yuǎn)程頁面還能用 JavaScript 調(diào)用本地文件、數(shù)據(jù)庫接口。對(duì)照熱詞里的 “chromium瀏覽器插件更”CEF 也支持加載一定范圍內(nèi)的 Chrome 擴(kuò)展機(jī)制但比 Chrome 瀏覽器本身要多一些限制后面我會(huì)單獨(dú)講。1.3 Chromium 90 的“歲數(shù)”與現(xiàn)實(shí)意義Chromium 90.0.4430.85 不是最新版本這是事實(shí)。但它不代表不能用了。很多項(xiàng)目鎖定舊版本是因?yàn)閮杉乱皇且蕾嚨牡谌綆毂热缒承┿y行控件、硬件加密驅(qū)動(dòng)只驗(yàn)證過舊內(nèi)核二是構(gòu)建了一個(gè)內(nèi)部標(biāo)準(zhǔn)全員更新成本很高。CEF 官方也會(huì)維護(hù)多個(gè)分支分支號(hào)越大對(duì)應(yīng)的 Chromium 越新但接口變化也越大。你選了一個(gè)版本后可能要長期維持在這條分支上。Chromium 90 的一個(gè)特點(diǎn)是它仍然支持一些舊式的網(wǎng)頁特性同時(shí)新特性也覆蓋了大部分。如果你的應(yīng)用是面向特定企業(yè)網(wǎng)環(huán)境訪問的內(nèi)網(wǎng)系統(tǒng)可能還在用老式 TLS 1.0/1.1 協(xié)議這時(shí) Chromium 90 至少還保留有相應(yīng)的處理能力雖然默認(rèn)可能關(guān)閉但還可以調(diào)。到了 Chromium 101 之后很多舊協(xié)議和舊加密方式會(huì)被強(qiáng)制移除這就導(dǎo)致一些老舊服務(wù)端直接無法訪問。熱詞里提到的“chromium 101 不支持一般 ssl 協(xié)議版本”本質(zhì)就是 Chromium 不斷收緊安全策略。所以堅(jiān)守 Chromium 90 的一個(gè)現(xiàn)實(shí)理由有時(shí)候并不是開發(fā)者不想升級(jí)而是用戶的服務(wù)端沒升級(jí)。2. 核心細(xì)節(jié)解析與實(shí)操要點(diǎn)2.1 解壓后的目錄結(jié)構(gòu)與關(guān)鍵文件把壓縮包解壓之后你會(huì)看到下面這些內(nèi)容include/CEF 的 C/C 頭文件寫代碼時(shí)必須要引用Debug/和Release/預(yù)編譯好的庫包含 libcef.dll、libcef.lib、libcef_dll_wrapper 等Resources/語言包、擴(kuò)展 API 等運(yùn)行時(shí)會(huì)用到tests/示例工程和測試程序比如cefsimple、cefclientcmake/CMake 配置文件方便你快速集成LICENSE.txt、README.txt這類文檔所有文件里最核心的是Release/libcef.dll。它是你的應(yīng)用啟動(dòng)時(shí)必須加載的主 DLL體積非常大幾百 MB 是常態(tài)。其次要考慮的就是Resources/目錄里的icudtl.datICU 國際化數(shù)據(jù)沒有它頁面文本會(huì)亂碼加載也會(huì)崩潰。v8_context_snapshot.bin和snapshot_blob.bin是 V8 引擎的啟動(dòng)快照移除后啟動(dòng)性能會(huì)明顯下降。所以解壓后別因?yàn)榭粗叭菦]用的庫”就手動(dòng)清理最好保留下整個(gè)Resources和Release目錄。如果你用的是Debug配置對(duì)應(yīng)要引用Debug/libcef.dll注意 Debug 和 Release 版本最好不要混用。我見過有人圖省事Release 工程里用了 Debug 的 DLL結(jié)果程序跑起來各種崩潰看起來像是代碼問題實(shí)際是庫版本不匹配。官方把這兩個(gè)目錄分開是有原因的Debug 版本里包含更多調(diào)試信息性能也更低混用會(huì)造成運(yùn)行時(shí)符號(hào)錯(cuò)亂。2.2 為什么很多團(tuán)隊(duì)堅(jiān)持選 Windows 64 位windows64這個(gè)字段決定了整個(gè)運(yùn)行環(huán)境的架構(gòu)。現(xiàn)在 Windows 10/11 絕大多數(shù)都是 64 位系統(tǒng)選 64 位版本有更充裕的地址空間和更好的高負(fù)載表現(xiàn)。CEF 內(nèi)部有多個(gè)進(jìn)程瀏覽器進(jìn)程、渲染進(jìn)程、GPU 進(jìn)程、網(wǎng)絡(luò)進(jìn)程等64 位下每個(gè)進(jìn)程能用的內(nèi)存上限遠(yuǎn)高于 32 位。如果你的應(yīng)用需要長時(shí)間開頁面、加載大圖表或者復(fù)雜 WebGL 內(nèi)容32 位很容易觸發(fā)內(nèi)存不足。但選擇 64 位也有代價(jià)你的整個(gè)程序必須編譯成 x64并且所有原生依賴都要匹配 64 位。有些老項(xiàng)目還掛著 32 位第三方的 DLL這時(shí)候就得評(píng)估是整體遷移還是繼續(xù)選 32 位。另外64 位版的 CEF 對(duì)編譯器和運(yùn)行庫版本更敏感通常要求你的工程使用/MD動(dòng)態(tài)鏈接而不是/MT靜態(tài)鏈接否則會(huì)出現(xiàn)運(yùn)行時(shí)庫沖突。具體在你的 Visual Studio 工程里需要把“運(yùn)行庫”設(shè)置為“多線程 DLL (/MD)”否則 CEF 初始化階段可能直接崩潰。如果只是想在本機(jī)做測試直接把Release目錄下的 DLL 復(fù)制到 exe 同目錄即可前提是系統(tǒng)裝了對(duì)應(yīng)的 Visual C 運(yùn)行庫。多數(shù)情況下2015-2022 的 VC Redistributable 都需要覆蓋安裝一遍不然 libcef.dll 加載階段會(huì)報(bào)缺少依賴。2.3 CEF 的依賴與運(yùn)行時(shí)環(huán)境CEF 在 Windows 上主要有兩套依賴一是 VC 運(yùn)行庫二是顯卡驅(qū)動(dòng)相關(guān)的 DirectX 環(huán)境。前者的缺失通常表現(xiàn)為“找不到 dll 入口點(diǎn)”或“0xc000007b”錯(cuò)誤后者的表現(xiàn)則更像黑屏、GPU 進(jìn)程崩潰、頁面渲染花屏。你還需要注意 CEF 的沙箱機(jī)制。默認(rèn)情況下CEF 會(huì)啟用瀏覽器進(jìn)程沙箱渲染進(jìn)程和網(wǎng)絡(luò)進(jìn)程運(yùn)行在受限權(quán)限下。這在公網(wǎng)環(huán)境中非常有必要但也會(huì)引發(fā)一些奇怪問題比如某些企業(yè)環(huán)境里用戶賬戶沒有足夠權(quán)限創(chuàng)建一個(gè)臨時(shí)目錄導(dǎo)致渲染進(jìn)程無法啟動(dòng)。解決方式有兩種一是確保安裝目錄可寫二是關(guān)閉沙箱只在可信環(huán)境下才建議。有人一遇到問題就no_sandbox true我建議你先排查權(quán)限和路徑問題最后再考慮關(guān)沙箱。沙箱不只是一個(gè)安全功能還負(fù)責(zé)進(jìn)程間通信的隔離隨意關(guān)閉會(huì)影響穩(wěn)定性。CEF 還強(qiáng)行依賴icudtl.dat它必須和libcef.dll放在同一個(gè)目錄下否則初始化直接失敗。我經(jīng)??吹接腥税袳xe單獨(dú)拷出去而icudtl.dat還在原目錄結(jié)果程序啟動(dòng)進(jìn)不了界面控制臺(tái)里報(bào)“Failed to load ICU data”。這個(gè)文件看起來不起眼卻是硬依賴。打包時(shí)最好把icudtl.dat、v8_context_snapshot.bin、snapshot_blob.bin、.pak資源文件全部放到 exe 同一級(jí)目錄不要自創(chuàng)子目錄。3. 實(shí)操過程與核心環(huán)節(jié)實(shí)現(xiàn)3.1 將 CEF 接入自己的窗口工程在 Windows 下集成 CEF主流方式是用 CMake Visual Studio 建一個(gè) C 工程。以最簡示例來說明假設(shè)你的工程已經(jīng)鏈接了libcef.lib和libcef_dll_wrapper的庫核心步驟如下。第 1 步初始化 CEF#include include/cef_app.h #include include/cef_browser.h #include include/cef_client.h // 進(jìn)程類型區(qū)分 int APIENTRY wWinMain(HINSTANCE hInstance, HINSTANCE, PWSTR, int) { CefMainArgs main_args(hInstance); // 如果是子進(jìn)程渲染、GPU、網(wǎng)絡(luò)執(zhí)行相應(yīng)的消息循環(huán)處理 CefRefPtrCefApp app(new MyApp); int exit_code CefExecuteProcess(main_args, app.get(), nullptr); if (exit_code 0) { return exit_code; } // 主進(jìn)程設(shè)置 CefSettings settings; settings.log_file cef.log; settings.log_severity LOGSEVERITY_WARNING; settings.no_sandbox true; // 僅調(diào)試用 CefInitialize(main_args, settings, app.get(), nullptr); // 創(chuàng)建瀏覽器窗口 CefWindowInfo info; info.SetAsChild(hWnd, CefRect(0, 0, width, height)); CefBrowserSettings browser_settings; CefRefPtrCefClient client(new MyClient); CefBrowserHost::CreateBrowser(info, client.get(), Lhttps://example.com, browser_settings, nullptr, nullptr); // 運(yùn)行消息循環(huán) CefRunMessageLoop(); CefShutdown(); return 0; }這只是一個(gè)非常骨架的寫法。MyApp里必須實(shí)現(xiàn)GetBrowserProcessHandler()和OnBeforeCommandLineProcessing用來調(diào)整命令行參數(shù)MyClient里要處理GetLifeSpanHandler()、GetLoadHandler()否則窗口關(guān)閉、頁面加載狀態(tài)沒有回調(diào)。如果你只跑一個(gè)簡單測試用官方cefsimple示例改一改最快。第 2 步工程屬性要注意語言標(biāo)準(zhǔn)選 C17字符集可以根據(jù)項(xiàng)目選擇 UnicodeCEF 內(nèi)部以 UTF-8/UTF-16 處理運(yùn)行庫設(shè)置為/MD附加庫目錄要分別指定到 CEF 的Debug或Release目錄并且運(yùn)行時(shí)要把對(duì)應(yīng)的 DLL 放到 exe 旁邊。從實(shí)際集成經(jīng)驗(yàn)看最常見的卡點(diǎn)是加載路徑和消息循環(huán)。CEF 支持CefRunMessageLoop()默認(rèn)的消息循環(huán)也支持multi_threaded_message_loop true和外部消息循環(huán)并存。如果你有一個(gè) MFC/Qt 的界面框架直接調(diào)用CefRunMessageLoop會(huì)阻塞界面這時(shí)你需要把 CEF 集成到框架自己的消息循環(huán)里處理CefDoMessageLoopWork()這個(gè)函數(shù)或者用多線程模式。我建議先跑通單線程模式再逐步調(diào)整消息循環(huán)方案。3.2 常用配置項(xiàng)詳解CEF 的CefSettings里有很多常見配置很多人配置完發(fā)現(xiàn)不起作用其實(shí)是因?yàn)榉佩e(cuò)了對(duì)象。下面這張表是我整理的高頻參數(shù)和實(shí)際用途配置項(xiàng)作用注意事項(xiàng)windowless_rendering_enabled開啟離屏渲染OCR可以用紋理給瀏覽器內(nèi)容做疊加開啟后必須自己處理鼠標(biāo)鍵盤事件Qt 項(xiàng)目常用multi_threaded_message_loop多線程消息循環(huán)CEF 自己管理子進(jìn)程和宿主程序的消息循環(huán)解耦no_sandbox關(guān)閉沙箱僅調(diào)試或可信環(huán)境使用不建議默認(rèn)置 truecache_path指定 HTTP 緩存、會(huì)話 cookie 存儲(chǔ)目錄必須設(shè)置否則 cookie 容易丟失或進(jìn)程異常log_fileCEF 日志文件路徑排查問題時(shí)建議設(shè)為提示級(jí)別user_agent自定義 UA很多服務(wù)端校驗(yàn) UA 時(shí)有用resources_dir_path指定.pak資源目錄默認(rèn)取 exe 所在目錄自定義時(shí)要小心locales_dir_path指定語言包目錄缺翻譯時(shí)可能顯示英文或亂碼persist_session_cookies會(huì)話 Cookie 持久化配合 cache_path 使用其中cache_path值得單獨(dú)說一次。有些項(xiàng)目只設(shè)了user_data_dir沒有設(shè)cache_path結(jié)果頁面內(nèi)每次登錄都“記住我”失敗因?yàn)?cookie 沒落盤。正確做法是在初始化時(shí)把緩存目錄指向一個(gè)可寫的用戶目錄比如%APPDATA%\你的產(chǎn)品名\CEF別把緩存寫到程序安裝目錄下Windows 的系統(tǒng)目錄權(quán)限限制會(huì)很麻煩。另外CEF 90 有個(gè)習(xí)慣如果你想關(guān)閉加載不安全的混合內(nèi)容或者忽略某些證書錯(cuò)誤需要在OnBeforeCommandLineProcessing里加開關(guān)。比如允許加載自簽名證書時(shí)可以加上--ignore-certificate-errors但這個(gè)開關(guān)全局影響安全生產(chǎn)環(huán)境不建議長期開啟。3.3 打包發(fā)布與資源分發(fā)當(dāng)你的程序開發(fā)完成后打包是個(gè)值得認(rèn)真對(duì)待的環(huán)節(jié)。把整個(gè)Release目錄里的文件全拷進(jìn)去可能體積太大但只留幾個(gè)關(guān)鍵文件又會(huì)踩坑。我常用的做法是保留 exe 同級(jí)的libcef.dll、chrome_elf.dll、icudtl.dat、v8_context_snapshot.bin、snapshot_blob.bin。保留Resources.pak、chrome_100_percent.pak、chrome_200_percent.pak以及resources語言包目錄如果不需要多語言只留en-US.pak和zh-CN.pak一般夠用。保留locales目錄移除多余語言包能減小體積。不要用 UPX 壓縮libcef.dllCEF 運(yùn)行時(shí)會(huì)加載大量符號(hào)壓縮后經(jīng)常導(dǎo)致崩潰或報(bào)錯(cuò)。如果你的應(yīng)用有自動(dòng)更新功能更新時(shí)最好全量替換 DLL 和資源文件不要只覆蓋 exe否則 DLL 版本不匹配會(huì)導(dǎo)致非常奇怪的錯(cuò)誤。還有一點(diǎn)殺毒軟件可能誤報(bào)libcef.dll因?yàn)樗w積大、內(nèi)部結(jié)構(gòu)特殊。這不是 CEF 的問題但實(shí)際部署時(shí)可以考慮對(duì)企業(yè)內(nèi)網(wǎng)殺毒白名單做申請(qǐng)或者在安裝包腳本里加一個(gè)說明。4. 常見問題與排查技巧實(shí)錄4.1 經(jīng)典錯(cuò)誤CefInitialize 返回 false遇到 CefInitialize 返回 false我一般先按這個(gè)順序排查CefExecuteProcess返回值是否異常如果是子進(jìn)程崩潰它可能返回-1而不是繼續(xù)主進(jìn)程邏輯。路徑配置是否正確libcef.dll、icudtl.dat是否和 exe 同一目錄。是否缺少運(yùn)行庫VC Redistributable 是不是沒裝全。是否重復(fù)初始化同一個(gè)進(jìn)程里兩次調(diào)用CefInitialize會(huì)返回 false。是否存在環(huán)境變量污染比如CEF_DISABLE_SANDBOX被設(shè)置了。如果日志打開后看到GetModuleFileName失敗或者icu_util::Initialize報(bào)錯(cuò)基本就是路徑問題。把log_file設(shè)置為LOGSEVERITY_INFO重啟程序再看日志能定位到很多隱藏錯(cuò)誤。4.2 白屏、頁面加載失敗白屏是 CEF 集成中最高頻的問題。我總結(jié)主要有三類原因第一類是資源路徑或緩存目錄異常頁面進(jìn)程崩潰后渲染不出來。第二類是網(wǎng)絡(luò)進(jìn)程無法訪問目標(biāo)地址比如系統(tǒng)代理配置、防火墻攔了子進(jìn)程、證書錯(cuò)誤。第三類是渲染進(jìn)程 GPU 崩潰導(dǎo)致頁面白屏但 CPU 占用率很低。對(duì)于第三類可以先加一個(gè)--disable-gpu開關(guān)看能不能恢復(fù)。如果能恢復(fù)說明顯卡驅(qū)動(dòng)不兼容后續(xù)再針對(duì)性處理 GPU 黑名單。熱詞里提到“chromium 101 不支持一般 ssl 協(xié)議版本”CEF 90 其實(shí)也已經(jīng)開始收緊 TLS 配置。如果你在連接某個(gè)公司內(nèi)網(wǎng)服務(wù)時(shí)報(bào)ERR_SSL_VERSION_OR_CIPHER_MISMATCH一般有兩個(gè)解決方向升級(jí)服務(wù)端 TLS 配置或者在 CEF 命令行里臨時(shí)調(diào)整密碼套件。后者不建議在生產(chǎn)環(huán)境使用但排查階段可以驗(yàn)證是不是協(xié)議兼容問題。4.3 插件與擴(kuò)展機(jī)制“chromium瀏覽器插件更”這個(gè)熱搜詞說明很多人關(guān)注 CEF 能不能加載 Chrome 擴(kuò)展。CEF 支持加載擴(kuò)展但有幾個(gè)前提擴(kuò)展必須是.crx或者未打包的目錄加載方式需要通過CefRequestContext設(shè)置擴(kuò)展注冊(cè)回調(diào)。更麻煩的是CEF 90 對(duì) Manifest V3 的支持并不完整很多新版擴(kuò)展裝不上。一個(gè)更可行的替代方案是不要依賴擴(kuò)展機(jī)制而是把你要的功能直接寫進(jìn) Web 頁面里用 JavaScript 調(diào)用 CEF 提供的CefQueryAPI 與本地代碼交互。擴(kuò)展適合瀏覽器環(huán)境CEF 更適合原生和 Web 融合所以沒必要硬塞擴(kuò)展邏輯。如果你確實(shí)要加載建議先在cefclient示例里測試確認(rèn)擴(kuò)展的權(quán)限聲明和 CEF 版本兼容再集成。4.4 與生態(tài)的聯(lián)動(dòng)JCEF、Playwright看到熱詞里“missing jcef runtime codebuddy relies on jcef”其實(shí)是典型的 JCEF 運(yùn)行時(shí)缺失問題。JCEF 是 CEF 的 Java 綁定很多 Java 桌面應(yīng)用會(huì)在代碼里動(dòng)態(tài)加載 JCEF 的二進(jìn)制文件。當(dāng)你看到Missing JCEF Runtime時(shí)通常不是你的代碼寫錯(cuò)了而是環(huán)境里沒有放對(duì) JCEF 對(duì)應(yīng)的jcefjar 和本地動(dòng)態(tài)庫。如果你在 Java 項(xiàng)目里使用 JCEF需要下載對(duì)應(yīng)平臺(tái)和 CEF 版本一致的 JCEF 構(gòu)建并確保java.library.path指向包含libcef.dll和jcef.dll的目錄。JCEF 的版本號(hào)與 CEF 版本嚴(yán)格對(duì)應(yīng)混用大概率起不來。至于 Playwright它的playwright install chromium安裝的是自動(dòng)化測試用的瀏覽器內(nèi)核和 CEF 不是一回事。不過有些同學(xué)會(huì)把它們搞混。Playwright 是一個(gè)測試框架它下載 Chromium 后通過調(diào)試協(xié)議驅(qū)動(dòng)頁面CEF 是嵌入式框架要嵌入桌面應(yīng)用。如果你只是希望本地下載 Playwright 的瀏覽器能快一點(diǎn)可以用 npm 鏡像源來加速比如修改PLAYWRIGHT_DOWNLOAD_HOST指向鏡像站這是完全合法且常見的做法。但要明確下載下來的 Chromium 不能直接當(dāng)成 CEF 包用兩者的目錄結(jié)構(gòu)、模塊劃分完全不同。4.5 性能與內(nèi)存優(yōu)化建議如果你把 CEF 60 或 90 用在一個(gè)長期運(yùn)行的客戶端里內(nèi)存堆積是常見問題。我建議關(guān)閉不需要的組件用--disable-featuresAutofillServerCommunication,Translate等參數(shù)減少不必要的功能后臺(tái)運(yùn)行。控制渲染進(jìn)程數(shù)量同一個(gè)頁面如果業(yè)務(wù)不復(fù)雜盡量用同一進(jìn)程處理不要過度創(chuàng)建瀏覽器對(duì)象。設(shè)置合理緩存目錄并定期清理cache_path如果無限增長磁盤占用和 IO 都會(huì)變差。監(jiān)聽CefV8Context釋放如果頻繁調(diào)用 JS 注入注意及時(shí)釋放引用防止泄漏。CEF 的進(jìn)程模型也值得花時(shí)間研究。默認(rèn)情況下一個(gè)彈窗可能會(huì)創(chuàng)建新的渲染進(jìn)程如果你的應(yīng)用頻繁彈窗進(jìn)程數(shù)會(huì)迅速增長。這時(shí)候可以通過CefBrowserSettings和自定義CefRequestContext來復(fù)用一個(gè)上下文減少進(jìn)程數(shù)量。5. 經(jīng)驗(yàn)總結(jié)與擴(kuò)展建議5.1 從 CEF 90 遷移到更高版本需要考慮什么如果你現(xiàn)在基于 CEF 90 開發(fā)想在未來升級(jí)到更新的 CEF 分支需要提前列一個(gè)清單。CEF 的 API 在版本升級(jí)中并不完全向后兼容尤其是涉及CefSettings字段的增減、CefBrowserHost::CreateBrowser的參數(shù)變化、以及命令行開關(guān)的重命名。你至少要關(guān)注三類問題編譯層面的調(diào)整新版本頭文件里某些方法簽名變了原來傳參的const char*可能變成了CefString的引用直接替換 DLL 不重新編譯后果就是鏈接失敗或運(yùn)行時(shí)錯(cuò)誤。行為層面的變化高版本 Chromium 對(duì)自動(dòng)播放、彈窗攔截、下載安全、跨域限制更嚴(yán)格前端代碼可能需要同步修改。視覺和字體渲染的變化Chromium 版本升級(jí)后小字號(hào)字體的渲染效果可能不一樣需要產(chǎn)品側(cè)重新過一遍 UI 回歸。如果你不想頻繁升級(jí)就鎖定一條長期維護(hù)的 CEF 分支同時(shí)關(guān)注該分支的安全公告只在該分支內(nèi)打補(bǔ)丁。CEF 官方支持一定周期內(nèi)的社區(qū)維護(hù)但最終還是建議跟著大版本走。5.2 替代方案與選型建議如果你的需求是“在 Windows 上內(nèi)嵌網(wǎng)頁”不妨先對(duì)比一下三種方案方案體積定制性系統(tǒng)要求適合場景CEF大100MB高需自帶運(yùn)行庫跨平臺(tái)原生客戶端、深度定制WebView2小系統(tǒng)提供中Windows 11/10 或者需要運(yùn)行時(shí)安裝純 Windows 應(yīng)用想要自動(dòng)更新Electron大安裝包一般 200MB中自帶 Chromium 和 Node.js快速開發(fā)功能豐富CEF 的定位是“嵌入”它不像 Electron 那樣自帶 Node.js你需要自己通過 JS 綁定和本地代碼通信。項(xiàng)目周期緊急、團(tuán)隊(duì)成員更熟悉 Web 技術(shù)Electron 可能更快但如果對(duì)包體積、進(jìn)程穩(wěn)定性、沙箱安全有硬性要求或者需要把瀏覽器模塊嵌入到既有原生工程里CEF 依然是繞不開的選擇。5.3 個(gè)人實(shí)操體會(huì)最后分享一點(diǎn)我自己的使用感受。早期我把 CEF 接進(jìn)一個(gè) MFC 項(xiàng)目時(shí)最讓我頭疼的不是初始化而是消息循環(huán)和進(jìn)程退出時(shí)機(jī)。CEF 的瀏覽器進(jìn)程如果和宿主進(jìn)程生命周期沒理順關(guān)閉主窗口后后臺(tái)還會(huì)殘留幾個(gè)進(jìn)程任務(wù)管理器里看起來像內(nèi)存泄漏。后來我習(xí)慣了在最外層維護(hù)一個(gè)“CEF 全局狀態(tài)”在WM_CLOSE里先CefShutdown再確保所有CefRefPtr引用都釋放完問題就少了。另外我建議剛接觸的人先直接用官方cefsimple示例跑起來再一點(diǎn)點(diǎn)往里加你自己的代碼別自己從零搭骨架。CEF 的初始化順序、資源路徑、回調(diào)線程都牽扯很多細(xì)節(jié)官方示例把這些坑提前踩了一遍能給你省下大量排查時(shí)間。然后你可以在一個(gè)獨(dú)立的測試工程里調(diào)CefSettings的參數(shù)觀察每一個(gè)開關(guān)對(duì)行為的影響這樣腦子里會(huì)形成“參數(shù)—現(xiàn)象”的對(duì)應(yīng)關(guān)系后面遇到奇怪問題就從容很多。這個(gè)cef_binary_90.5.9gd330790chromium-90.0.4430.85_windows64.zip雖然是個(gè)舊版本但作為學(xué)習(xí) CEF 的起點(diǎn)很合適。結(jié)構(gòu)、配置、常見坑都和其他分支差別不大你學(xué)會(huì)這一套之后再切到新版分支主要精力只需花在 API 差異上。能折騰完這個(gè)包你對(duì)桌面端嵌入瀏覽器的理解會(huì)扎實(shí)很多。本文還有配套的精品資源點(diǎn)擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
WwW天天干| 校园激情 亚洲| 亚洲综合另类| 99热1| 9久精品视频| AV伊人青草丁香六月| 日本精品人妻无码77777| 色五月色五天免费视频| 五月天婷婷导航| 91色在线| 狠狠干在线| 99色精品| 久久九九综合| 99热大香蕉| 777精品成人a v久久| 丁香五月综合激情性爱 | 五月天丁香婷婷网| 国产精品18久久久| 99精品热| 大香蕉婷婷| 天堂在线9| 五月丁香激情综合欧美| 99热99热在线观看| 26uuuavcom| 超碰人人操人人干| www.99在线| 成人在线视频一区| 99久久97久久欧美综合网| 激情黄色五月天| www.日本91| 丁香综合| 热久久这里只有三级视频| 99爱在线视频| 无码少妇高潮喷水A片免费| 九九99久久| 人人添人人| 超碰人人超碰| 五月天色色网站| 伊人网啪啪| 激情影院69| 精品国产一区二区三区四区阿崩| 婷婷在线网| 久久婷色| 五月丁香婷婷五月色| 五月丁香综合网| 91狠狠色色丁香婷婷综合久久| 激情性五月天免费小说视频| 26uuu在线观看| 99精品在线下载| 婷婷在线操| 黄色aaaaa| 啪啪一区| 丁香五月激情综合网激情五月| 九九激情网| 久草 天堂| 久操97| 亚洲顶级VA在线观看-高清完整版在线影院观看-S022AV | 97se在线视频| 噜噜色婷婷| 五月丁香婷婷激情久久| 婷婷五月天开心网| 日本三级大片| 婷婷色影音天| 丁香五月婷婷天堂大香蕉| 精品五月花| 青青草99re| 日韩情色在线观看| 久久婷婷亚洲| 99国产性感视频| 六月丁香激情综合| 日韩在线视频中文字幕| 少妇性按摩无码中文A片| 丁香九月激情| 伊人9草在线观看| 日良久久| www.sezonghe| 国产激情在线| 五月天操逼激情| 999九九九久久久99HD| 亚洲色色五月| 婷婷丁香五月天在线视频| 五月色俺婷婷| 99国产在线| av九九| 色婷婷8| 99在线综合视频| 婷婷刺激综合| 久久久婷丁香五月| 婷婷五月天Av| 亚洲男人的天堂婷婷色五月| 色婷网| 午夜天堂一区人妻| 亚洲综合另类| 婷婷六月天激情影院| 五月激情六月宗合| 婷婷六月天| 碰碰碰97国产| 激情丁香久久| 久操激情| 久热爱大香蕉在线蜜臀悦色| 夜夜夜夜操| 五月天婷婷激情在线色图| 97中文在线| 欧美成人一区二区三区在线视频| 国产 码在线成人网站| 亚洲人人操BD| 蜜桃人妻无码AV天堂三区| 婷婷五月欧美AA片免费| www.五月激情.com| 夜夜谢天天干| 伊人婷婷五月天| 色综合综合网| 欧美性生交XXXXX无码小说| 神马欧美精| 婷婷五月天激情在线观看| 婷婷久久精品| 97香蕉人人在线观看| 丁香五月老师| 国产成人精品一区二三区熟女在线 | 亚洲九区| 玖玖色综合网| 久久久久网站| 天天日天天色| 1024欧美日韩精品久久久| 天天摸,天天爽| 国产91视频| 丁香色色五月| 天天操,夜夜骑| 五月婷婷婷婷| 丁香色五月婷婷17C| 99热6色| 九九热在线精品视频| 伊人网碰碰| 思思精品热在线| 五月丁香激情综合| 精品国产va久久久久久久| 玖玖综合色| 日日噜噜久久婷婷五月天| 亚洲久久视频| 久久黄色片| 欧日美女Va| 色婷婷六月天| 9久久久久久久久久久| 婷婷五月天美女21p| AA片在线观看视频在线播放| 操操操av| 免费看欧美成人A片无码| 妇激情基地| 久久婷婷五月综合| 9|无码久久久久久| 婷婷五月天AV| 九九亚洲小视频| 亚洲第一综合| 激情狠狠丁香月| 国产露脸150部国语对白| 亚洲一个色| 五月天婷婷色综合| 五月丁香好婷婷姑娘综合网| 亚洲综合网在线| 婷婷六月丁香激情综合| 伊综合蕉| 亚洲第一成人无码A片| 亚洲性视频| 久草狼人| 少妇丁香婷婷 | 日日夜夜小色哥| 日日夜夜九九| 日本九九视频| 色色色视频| 偷偷与邻居做爰完整视频| 99热精品10| 涩涩五月天| 婷婷五月天日逼| 国产91资源在线| 天天干天天射综合网| 97婷婷五月丁香| 四月丁香五月婷婷久久| 久久婷婷五月国产激情综合片| 久久婷婷色| 人人色性网| 久久久av久av久片一区二区| 色色色五月婷| 五月丁香狠狠爱婷婷综合| 人妻熟人中文字幕一区二区| 婷婷久久免费| 深爱开心激情网| 99re久热| 五月丁香啪啪网| 色五月天激情| 91啪啪视频| 丁香六月综合激情| 久99热在线观看| 色情五月婷婷| www.99热这里精品| 极品精品一区二区三区在线| 91九色精品熟女内射| 色五月婷婷在线视频| 亚洲AV成人无码精品| 91九色国产熟女| 六月色婷婷色| 亚洲综合无码| 4399精品一区二区| 男妓跪趴把舌头伸进我的嘴巴| 深爱五月日韩| 色五月五月丁香| 丁香五月综合久久综合| 玖玖婷婷免费| 婷婷五月天伊人| 天天日夜夜帕| 天天摸日日舔狠狠添婷婷婷| 五月天国产成人| 久久久久久久久久久jjjj| 综合伊人久久| 丁香六月在线| 激情开心五月亚洲| 六月香五月婷| 日韩欧美一区二区三区四区| 色色婷婷丁香| 国产精品99久久久久久猫咪| 四射综合网| 婷婷亚洲天堂| 五月婷婷香| 26UUU欧美| 热的国产,热的综合,热的有码| 久久婷婷网站| 国产精品电影网| 欧美怡红院黄站| 在线观看中文字幕| www.91色| 激情久久综合| 另类专区在线| 97人人操人人| 五月婷婷久久久| site:ornaments52.com| 婷婷五月天亚洲激情戏精品| 色播五月丁香婷婷| 人妻性爱| 五月婷婷六月激情在线| 色婷婷激情小说网| 激情婷婷五六月天| www天天干| AV电影在线播放| 2015超碰| 九九亚洲综合| 亚洲第一成人无码A片| 99re久热| 丁香六月婷| 色综合久久无码| 极品人妻VIDEOSSS人妻| 久久精品无码一区| 久久五月热| 热思思九九| 亚洲另类在线观看| 久草婷婷网| 激情六月婷婷| 丁香五月花影院| 人妻丰满精品一区二区A片| 色情综合网| 久久资源网五月婷| 婷婷色导航| 亚洲综合五月| WWW嗯嗯啊啊啊啊| 精品夜夜澡人妻无码AV| 五月丁香另类网| 玖玖九九9999在线观看视频精品| 国产性爱一级| 丁香五月激情六月欧亚激情综合导航| 九月丁香婷婷综合激情| 色爱终和网| 精品A√| 五月婷婷六月丁香色| 婷婷五月天综合色| 91狠狠色色丁香婷婷综合久久| 99日本在线| 丁香五月天网站| 大香蕉五月天婷婷| 风流少妇A片一区二区蜜桃| 亚洲亚洲人成综合网络| 久久久久久久五月| 日韩色色色色色| 久久人妻久久久久| 五月婷婷六月丁香在线视频| 啪啪激情综合| 男人大jjc女人免费视频| 婷婷五月丁香激情图片 | 大香久久伊人网| 日韩av网站在线观看| 丁香婷婷综合激情五月色| 站长推荐无码播放| 亚洲激情视频网| 欧美色爱五月天| 狠狠99| 五月天色社区| 日日操无码| 国产.亚洲.欧洲视频在线| 激情图片亚洲| 天天日天天干天天爽| 久久婷婷五月综合激情国产| 刘玥av在线| 涩玖玖免费视频| 任你爽免费视频| 99亚洲欧洲| 婷婷五月乱交换| 久久久www| 99久久综合网| 婷婷五月天开心网| 九九www| 激情综合网之激情五月| 香蕉人在线香蕉人在线 | 在线视频你懂得| 欧美日韩成卜| 婷婷五月天在线看| 天天干天天日天天操| 99热国产免费| 综合狠狠干| 五月天五月色| 色色国产| 天天肏夜夜肏| 99re热在线观看| 熟女少妇内射日韩亚洲| 如何安全看伊人婷婷| 天天摸天天日天天舔| 五月丁香影院| 情色婷婷五月天| 免费视频在线观看的网站| 中文资源在线a| 五月丁香婷婷综合网色欲| 大香蕉久| 久久伊人9| 淫荡工a| 99热综合| 丁香五月六月久久综合| 色色激情五月天| 亚洲视频码| 夜夜爽天天| 91丨九色丨白浆| 激情五月成年| 丁香花五月天| 成人做爰A片免费看网站找不到了| 色噜噜狠狠色综合网| 五月天精品综合在线| 亚洲操人| 婷婷久久五月天亚洲欧美国产日韩在线观看| 俺去也五月| 综合色图婷婷| 五月丁香婷婷三级| 五月婷婷久久爱| www.人人操人人看人人想人人摸 人人人人操,COM | 久久er这里只有精品| WWW.17C亚洲精品| 久久五月天 91| 99久久思思| 五月丁香激情综合| 久久五月婷综合网| 五月天激情色色| 99精品在| 婷婷五月天成人视频| 狠狠色丁香婷婷基地| 五月天色图| 五月婷丁香花| 九九九激情综合| 狠狠肏综合网| 丁香婷婷天堂| 开心色五月天久久久久久久| 香蕉伊人综合| 五月婷婷综合激情| 99热在这里只有免费精品| 天天综合精品| 操逼在线视频| 久久综合网桃花| 五月天色区| 91久久免费| 国产avapp 网| 天天干夜夜操A片| 五月天婷婷综合网| 四色女婷婷| 99视频在线9| 99热视精品| 97碰碰免费.视频| 另类小说激情五月天| 99热九九在线| 久机视频这只有精品| 丁香五月天天| 亚洲综合碰| 欧美三日本三级少妇三99| 中文字幕综合| 亚洲日韩乱码一区二区三区四区| 婷婷久久亚洲| av中文在线| 欧美S码亚洲码精品M码| www夜夜操| 色欲色天天香综合| 国产婷婷婷| 婷婷五月综合视频免费播放| 91丨九色丨国产打屁股| 五月四色激情| 综合婷婷| 激情五月四色| 久久视这里只有精品| 天堂伊人干| 天天狠狠六月婷丁香影院| 五月丁香性爱| 99色嘟嘟精品网站| 亚洲天天操| 日日日影院| 九九热99熟女| 丁香五月天堂婷婷| 九九色综合| 天天干天天射综合网| 婷婷网影院| 成人做爰A片免费看网站找不到了| 五月丁香婷婷三级| 人妻操逼| 超碰在线观看99| 玖玖色综合色| 亚洲色啪| 色婷婷AV在线| 成人丁香婷婷| 日日操天天操| WWW,五月| 伊人啪啪网| 毛片网站谁有| 91干在线| 99ri视频在线播放| 1024欧美看片| 精国产品一区二区三区A片| 四色五月婷婷| 丁香九月婷婷色| 久久久精品99亚洲综合| 久久久.COM| 九九综合九色欧美狠狠| 无码少妇高潮喷水A片免费| 亚洲午夜电影| 激情婷婷六月天| 综合色五月天| 九九九九九无码| 色五月超碰| 丁香五月婷婷激情蜜桃| 逼特逼在线免费播放| 狼人久草| 国产精品久久久久久白浆色欲| 日日日影院| 狠狠艹狠狠艹| 婷婷和五月天| 伊人久久婷婷| 97人妻碰碰中文无码久热丝袜| 丁香五月婷婷少妇| 另类国产欧美视频| 久久久久视剧HD| 麻豆WWWCOM内射软件| 婷婷爱五月天| 色五月婷婷基地| 9热精品| 色五月婷婷在线观看| 开心色播色五月婷婷| 婷婷丁香视频在线观看免费 | 另类小说五月天| 97人人看一| 色婷婷丁香AV综合| 91免费试看| 另类婷婷五月天啪帕帕| 日本道久久91| 日本三级片片| 97五月婷婷| 亚洲无码www| 任你干嘛免费视频播放| 成人色图情色成人网 www.5b5b5bcom 五月天| 欧美噜一噜| 国产五月天激情小说| 九九sese| 婷婷.com| 日本在线视频播放91| 偷偷操99| 狠狠干五月天| 国产精产国品一二三在观看| 日本在线观看aaa 99| 五月天激情亚洲| AV网在线观看| 中文资源在线a | 色色色综合色| 综合激情网五月激情| 久婷婷五月激情| 开心深爱五月天| www,欧美干干干干干干| 这里只有精品免费观看网占| 99色五月| 99综合| 99在线精品免费视频| 天天躁日日躁狠狠躁日日躁2022年5月9日 | xxxx久| 婷婷六月丁香五月| 丁香六月在线综合| 婷婷大乡焦噜噜| 中文字幕永久免费| 就爱射中文字幕资源网| 天天做天天爱天天高潮| 日本色五月| 国产黄大片在线观看画质优化| 中文字幕91,综合| 国产超碰在线| 天天做天天爱天天综合网| 欧美激情综合色综合啪啪五月| 91精品久久久久久| 玖玖色综合色| 亚洲第一黄网| 一级二级香港秋霞欧美欧美秋霞| 99久久久久久| 久久久久久久久18久久| 91色久| 六月婷婷影院| 五月丁香成人网| 丁香五月婷婷综合啪啪| 激情五婷网| 丁香亚洲婷婷五月| 丁香五月婷婷基地| 色九月丁香婷婷蜜桃在线观看| 女同激情久久av久久| 五月丁香六月婷婷不卡免费无码| 欧美日韩成人在线网站| 丁香五月大香蕉在线99| 六月丁香久久| 99色视频在线| 日本操B视频在线观看| 色99自拍| 五月天色社区| 国产精产国品一二三在观看| 91久久婷婷| 99免费热视频| 五月网站| www.91.com处女在线直播| 综合久久99| 欧美成人AAA片一区国产精品| 亚洲色婷婷五月天| 亚洲视频在线观看| 五月天激情综合首页| 国产成人亚洲综合A∨婷婷| 国产精品涩涩涩视频网站| 色五月婷婷综合在线| 五月天停停基地| 四色永久成人网站| 欧美内射AA| 亚洲激情久久| 久久久久久18| 精品A√| 欧洲电影在线观看免费版英语版| 五月婷婷激情综合在线| 色综合色色| 久久一品区| 久久性爱视频久久性爱视频| 日韩一级| 夜丁香五月婷婷| 国产AV一区二区三区最新精品| 中文字幕成人| 九九热在线99| 婷婷五月四狠狠| 國語久久婷| 午夜丁香 婷婷| 国产色五月| 成人免费黄色短视频| 深爱女色婷婷丁香五月亚洲图区| 97色色网| 色婷婷五月天激情久久| 亚洲精品字幕在线观看| 精品一区二区三区四区五区六区介绍 | 最新久久网址| 亚洲欧美成人在线| 9久热| 97精品综合久久| 中文字幕婷婷| 91九九| 99热这里只有精品3| 亚洲综合婷婷| 久久五月丁香| 六月婷婷七月丁香| 亞洲自怕| 99爱视频| 五月天久久久| 国产精自产拍久久久久久蜜 | 五月丁香六月激情综合欧美| 久久码久久无清| 九九这里有精品| 婷婷丁香综合| 久99热| 婷婷激情五月天网站| 激情丁香五月| 婷婷激情五月天小说校园| 五月丁香综合久久夜夜| 丁香五月天婷婷激情| 婷婷伊人75| 99视频久久| 狠色综合网| 疯狂做受XXXX高潮A片动画| 日本视频久久| 久久五月天婷婷| 五月丁香六月成人| 国产精品久久久久久久久久久久| www色五月天| 9久9久| 色999五月色| 天天综合色丁香| 无码激情AAAAA片-区区| 亚洲中文乱字字幕在线永久| www.99视频| 欧美成人AAA片一区国产精品| 天天舔日日肏夜夜爽| 超碰伊人碰婷婷五月| 中文字幕在线免费观看视频| 第四色婷婷最爱| 激情五月天情色| 人人操AV| 亚洲亚洲亚洲AAAAAA| 精品99在线看| 国产AV一区二区三区日韩| 五月婷婷婷婷| 婷婷五月天播| 99啪在线| 亚洲日本韩国| 六月婷婷av| 深爱丁香激情| 色丁香五月婷婷| 婷婷五月激情基地| 激情五月丁香五月| 五月天亭亭俺也| 久久九九怡红院| 日韩三级视频一区二区| 亚洲综合五月天| 国产午夜精品久久久观看| 婷婷永久在线| 久操人| 农村熟妇高潮精品A片| 激情五月六月| 九九久久五月天综合伊人| 一起草无码| 久久大香蕉丁香| 婷婷伊人久久| 亚洲天天| 色婷婷五月亚洲| 欧美99热| 中文字幕网站在线观看| 丁香婷婷五月色综合| 色播五月丁香| 激情婷婷五月天| 99色免费观看全部| 五月婷婷六月天| 久re热视频| 丁香五月激情视频| 亚洲五月综合色播| 蜘蛛女免费观看完整版高清电影| 99精品在线观看视频| 激情婷婷护士激情| 九色综合网| 免费精品99| 久久久婷婷婷| 久操无码| 亚洲操精品| 色噜噜狠狠一区二区三区| 另类小说五月天综合网| 色五月丁香总合网| 久久精品爱爱| 99在线观看亚洲| 狠狠色噜噜狠狠狠狠综合| 精品九九网| 天天色五月婷婷91久久久久久久| 久久综合五月天激情小说网站 | 激情四射五月天| 亚洲色色五月天| 丁香久久九九99| 婷婷久久女人| 婷婷五月欧美AA片免费| 综合九九久久| 九九99在线视频| 六月丁香激情| 久久香蕉福利| 丁香九月婷婷| 婷婷五月天 偷拍| 嫩草综合网| 婷婷五月天天| 婷婷激情网五月天| 天天婷婷色六月| 久久人妻视步| 五月丁香色综合| 一起草Av| 99久久网站| 国产人妻人伦精品一区二区| 亚洲 在线 另类| 伊人狼人干| 欧在线一区| 影音先锋91资源站| 色吧综合网| 99er免费在线观看| 天天射夜夜骑| 99热天堂| 五月天激情小说| 国产亚洲精品久久久久久久久动漫| 91人人人人人| 国产婷婷久久| 色色吧综合| 日本色婷婷综合| 99热久草| 综合久久综合| 大伊香蕉精品视频在线| 92久操视频| 超碰超碰在线| 天天干天天干天天干天天干天天| 操操操Av| 色色色99| 六月综合婷婷开心伊人| 激情五月天黄色小说| 色情激情五月| 亚洲视频五区| 99热这里只有精品一| 五月婷婷在线综合| 欧美日韩成人在线| 99视频啪啪| 99久在线精品99re8热| 深爱开心激情网| 激情网婷婷五月天| 九九在线视频| 人妻视频在线| 99视频精品全部免费 在线| 亚洲激情网| 午夜丁香婷婷| 任你操精品免费| 五月丁香婷婷综合激情基地| 97九色视频| 一本色道久久88加勒比| 99热99精品| 日韩六十路91性交电影| 色婷婷六月| 蜜臀AV在线观看| se.久久视频在线观看| 九九热亚洲中文在线观看免费| 久久久精久人妻| 第四色激情网| 色五月在线综合| 开心六月丁香五月婷婷| 欧美激情综合五月色丁香| 综合色久| 婷婷五月网图片区| 激情五月天www| 色色五月婷| se.久久视频在线观看| 深爱五月婷婷开心中文字幕| 久9热视频| 青柠影视免费高清电视剧| 婷婷五月情| 婷婷丁香五月综合激情视频| 国产69久久久欧美黑人A片| 综合网网欲色| 五月丁香无码视频| 狠狠干,狠狠操| 九九综合九九| 久热这里只有精品6| 超碰婷婷色| 99婷婷| 九九热免费视频| 国产毛片精品一区二区色欲黄A片| 色爱综合网| 九九热这里| 91av成人| 夜夜天天久久婷婷| 六月婷婷综合| 九九热在线观看6| 综合网啪啪| 丁香五月婷婷少妇| 天天综合天综合| 国产乱妇无乱码大黄AA片| 久er免费视频| 成人AV免费观看| 中文字幕AV网址| 日本操B视频| 国产精品A片在线| 国产精品色色色色| 大伊香蕉精品视频在线 | 97人妻碰碰碰久久香蕉| www.99免费视频| 久久激情五月婷婷| 久久亭亭电影| 久久激情五月婷婷| 色约约视频一区二区三区四区五区| 久久精彩视频99| 欧美槡BBBB槡BBB少妇| 99热精品在线播放观看| 五月丁香六月| 美女要搞搞天天搞搞搞网站| 五月婷婷无码| 婷婷丁香五月天小说| 狠狠操综合| 91人人操人人爱| 噜噜噜狠狠色综| 大香蕉婷婷丁香视频在线| 日韩成人中文字幕| 91狠狠综合网| 丁香五月婷婷影院| 一级片sese片.COM| AV中文在线| 欧美激情丁香五月天久久婷婷一区| 777精品久无码人妻蜜桃| 色婷婷狠狠干| 超碰成人黄色网| 超碰成人电影| 在线理论片| 色五月婷婷天天干| 国产无套精品一区二区| 成人天天爽| 国产精品99久久久久久久女警| 色 五月婷婷基地| 久久性综合| 婷婷娌伦网| 久9热视频在线观看| 91九九| www.25五月婷婷| 五月天丁香婷婷网| 老司机伊人| 站长推荐无码播放| 色碰碰视频| 亚洲日韩人妻操逼| 日韩aⅴ视频| 色色欧美色色| 亚洲成人无码网站| 99国产精品白浆在线观看免费| 五月婷婷综合精品| 99视频在线播放大全| 六月丁香啪啪啪| 精品久久久久久久人妻| 久久新| 久久五月综合| 夜夜骑天天操| 国产亚洲99| 五月色情婷婷| 在线播放成人网站| 天天橾夜夜爽| 超爽内射| WWW.国产| 亚韩在线视频| 深爱丁香激情| 超碰操网| 超极99精品| 天天干天天色综合| 狠狠操狠狠做| 99精品热视频只有精品10| 丁香五月大香蕉在线99| 色五月天丁香| 亚洲综合色五月| 亚洲色久| 婷婷激情综合色五月久久91| 日本片日本片祼观看网站在线看中文版网页在线看 | 丁香五月婷婷影视先锋| 996er热| 婷婷五月天在线观看免费 | 中文字幕av久久爽一区| 丁香五月天激情综合网| 久久婷婷的综合色丁香五月| 成人精品一区日本无码网| 五月天伊人久久久久| 色五月婷婷丁香婷婷| 另类亚洲视频| 日韩aⅴ视频| 欧美黑人巨大性生话| 五月天色综合| 丁香婷婷综合激情五月色| 噜综合| 99热免费精品| 操碰99在线视频观看| 99国产精品久久久久久久久久久 | 婷婷WWW久久| 少妇AB又爽又紧无码网站| 婷婷五月综激情| 久久精热| 久久久精久人妻| 激情婷婷人妻| 一起草AV| 91婷婷| 国产综合81p| www.com在线操视频免费观看| 亚洲经典三级| 久青草影院| 激情五月丁香五月| 五月丁香六月激情| 五月天色五月| 日本VA视频| 99亚洲日韩| 婷婷五月丁香成人| 五月婷婷 六月丁香| 热这里只有精| 九九综合视频在线观看| 色一区高清| 综合久久综合| 色五月首页| AV网站免费在线| 九热...av| 99久久99九九九99九他书对| 操九色| 日本啪啪网| 色激情五月| 国产ava| 天天操加勒比| 91狠狠综合久久| 丁香六月婷| 98色丁香五月婷婷综合网| 丁香五月综合久久| 超碰精品国产首页| 中文字幕综合| 色色五月天网站| 亚洲午夜AV| 五月天免费色| 婷婷激情蜜桃玖玖丁香| 五月精品免费XXX| 天天五月香欧美| 五月丁香婷婷综合久久| 中文字幕综合网| 婷婷五月天影院| www.超碰| 亚洲成人一区| 久久99精品久久久久久青青AR| 丁香五月天社区婷婷| 久久网婷婷| 亚州综合色| 色天堂在线| 欧美天天爽| 激情六月婷婷| 丁香五月亭亭六月综合激情网| 婷婷五月天性| 婷婷激情社区| 久久综合性| 婷婷五月天激情网| 婷婷酒色网| 色婷婷五月综合在线| 亚洲超碰在线| 久久99热精品a片在线观看| 丁香美女主播视频在线观看| 97人人操| 久久五月丁香| 9l视频自拍九色9l黑人| 99久久99九九99九九九| www。88热在线视频免费观看| 热99热9| 欧美激情综合色综合啪啪五月| 激情五月天小说网| 9l视频自拍九色9l黑人| 五月丁香激情综合六月涩涩爱| 天天搽天天射| 99这里只有精品99| 玖玖热视频| 99热地址| 在线日本www| 这里只有精品偷拍| 色婷婷丁香五月色综合网| 六月婷婷av| 午夜天堂一区人妻| 日本人人干| 很很干五月天| 五月丁香自拍| 狠狠婷婷综合| 色婷操逼| 99热这里只有精品22| 色婷婷丁香五月| www.久久99精品| 欧美久草在线日本一级特黄大片做受9在线观看韩国电影《两个女人》未删减-毛片 | 综合九九久久| 久久久久婷婷五月热综合| 日本在线va| 色99视频| 任你搞在线观看视频| 婷婷五月天激情综合婷婷五月天激情综合| 五月天婷婷人妻| 久9热| 丁香五婷| 丁香五月av在线| 亚洲综合五月天| 日韩三级视频一区二区| 激情图片婷婷| 激情婷婷啪啪| 久久精品一区二区三区四区| 91色色色| 99热国产这里只有精品| 日日鲁鲁鲁夜夜爽爽狠狠视频97| 99久久久久| 一起草性爱不卡视频| 黄色三级毛片中字| 国产亚洲在线| 日本在线视频播放91| 1769在线观看欧美国产| 国产精品久久在线观看技巧| 日本超碰在线| 欧美毛卡| 天天天天天日| 色综合网页| 丁香婷婷人妻综合网| 丁香在线视频| 成年人夜夜喷水| 囯产精品久久欠久久久久久九大| 免费一区二区三区| 婷婷五月天,影院| 狠狠色丁香| 波多野结衣AV无码Porn| 六月色丁香中文字幕| 69超碰在线| 丁香激惜男女| 综合网色| www。狠狠干。com| 成人短视频在线观看| 婷婷五月激情的图片| 五月天国产婷婷精品视频在线| 色五月天婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷 | 99在线视频精品| 欧美黑人巨大性生话| 开心激情色婷婷五月天| 九九这里都是精品| 五月天激情四射| 夜夜干夜夜操| 日韩综合网络男女香蕉a片| 丁香婷婷五月色成人网站| WWW.久久久久久久久久久久久| 婷婷射丁香| 五月天另类图片区99| 亚洲日日日| 色九九综合热99| 婷婷丁香97| 黄色五月婷婷| 99热婷婷| 婷婷丁香五月天哟啪| 日本狠狠干| 狠狠色狠狠鲁| 97在线观视频免费观看| 午夜激情五月| 欧美婷婷丁香五月| 色情五月综合婷婷| 另类伊人婷婷| 五月天.com| 外国碰视频网站97| 五月婷激情| 日本熟女视频一区二区| 乱岳熟女50岁| 色狠狠综合入口| www:99热视频| 99精品在线播放| 色五月婷婷成人视频| 国产肥白大熟妇BBBB视频| 色欲资源网| 欧洲MV日韩MV国产| 色色色图| 综合激情婷婷| 97福利视频| 五月丁香六月激情啪| 91互操| 97福利视频| 蜜臀九九九九| 人人操人人干AV| 亚州操人在线视频| 丁香五月婷婷亚洲另类| 五月婷婷黄| 99久久综合网| 亚洲色小说在线综合| 人妻中文字幕网| 丁香色色网| 色婷婷丁香五月色综合网| 七七色综合| 99热综合| 成人性爱精品视频| enecarbon-materials.com污K127封锁请涟系@wip1688 | 一本到不卡高清DVD| 天天综合久久| 五月婷婷色播网| 强奸幻女毛片| 久久综合五月天| 久播影院免费观看电视剧大全最新网| 婷婷九月丁香天堂丁香天堂| 久久激情网| 人人爱人人摸人人澡| 五月婷av| 亚洲色婷婷| 99热费观看| 婷激情五月天视频导航| 国产精女同一区二区三区久 | 久久艹 五月天| 色综合久久44| 五月天婷婷五月| 大香蕉五月婷婷| 国产在线网| 9999久久久久| 婷婷五月六月激情| 激情婷婷五月女| 女人天堂久久| 无码激情AAAAA片-区区| 97碰久久| 欧美xx激情视频在线观看| 亚洲综合在线视频| 第四色网婷婷| 五月丁小婷婷激情四射| 九九九九综合| 婷婷网五月天| 日本性激情色播| 色婷婷免费观看| 久草嫩草在线观看| 日韩AV在线影片| 97啪啪| 影音先锋91资源站| 天天插天天插天天插| 成久综合视频| 在线观看中文字幕亚洲| 超碰在线播放免费观看| 五月婷视频| 大香蕉啪啪啪| 综合视频久久| 天天摸色吧天天摸色吧| 婷婷久久六月天| 99惹在线精品免费观看| 久久一级片| 97操男人的天堂| 久综合九综合99| 俺去也婷婷| 天天干电影| 色综合99| 狠狠狠狠操| 九九久久99| 五月婷婷成人网首页| 五月丁香亚洲校园欧美| 九九热99免费视频| 91人人爽狠狠狠| 五月婷婷免费在线观看视频| 久久性爱网站| 亚洲精品乱码久久久久99| 草草色情综合网| 五月亭亭开心网| 欧美色色色色色| 日本三级中国三级99人妇网站| 丁香激情六月天婷婷| 开心婷婷五月天电影院| 26uuu国产色| 99爱在线| 婷婷五月在线综合| 九九精品片一| www.精品99| 激情婷婷五月亚洲| 色9色| 停停色综合伊人| 夜夜躁狠狠| 中文字幕丁香五月| 嫩BBB槡BBBB搡BBBB视频| 天天噜天天爱| 色情播放| 婷婷五月噜噜| 99精品视频免费| 亚洲第一精品成人999久久精品| se99视频| 色婷婷综合影院| 五月丁香亭亭| 日韩成人无码人妻| 天天色色天天| 538在线精品| 色色色综合| 久久人妻少妇嫩草AV| 婷婷五月丁香青青草在线| 天天操天天国产三级片处女学生妹| 伊人天堂婷婷| 99色在线观看视频| 久久婷丁香五月| 久久婷婷六月| 午夜不卡成人一区二区| 五月天色婷婷基地| 另类激情五月在线视频欧美| 色综合色五月| 久久久免费精彩视频| 激情五月婷婷| 五月婷婷性爱视频| 91九色欧美| 五月天久久久| www,色中色| 丁香在线视频| 婷婷综合网站| 黄色热99| 激情久久 婷婷| 大香蕉 伊人夜| 久久HD| 99久久er| 六月婷婷综合激情| 五月天另类小说| 色五月 婷婷, 大香蕉| 丁香五月AV| 99自拍网| 丁香五月aV| 色五月天成人| 思思热视频| 亚洲黄网AV| 日本久久婷婷| 综合久久五月| 婷婷无码五月天| 精品久久99| 久久看九九90| 久久久婷婷| 婷婷五月天激情AV影院| WWW久久久| 91碰人人| www.99热日韩.com| 激情五月狠狠| 婷婷五月花| 三级99热| 五月天色播网| 九九性爱网| 色综色网| 狠狠色丁香久久久婷| 五月天婷网| 99久久网站| 玖玖婷婷婷丁香五月| 丁香久久五月天视频在线观看| 亚洲天天操| 国产精品成人AV在线观看春天| 熟女91九色| 就要去操亚洲成人精品五月天丁香婷婷| 亚洲五月色| 成人中文网| 色五月天影视| 激情五月天婷婷丁香 | 久久成人天| 色色婷婷五月天| 激情婷婷22月间| 丁香五月激情月| 91丨九色丨熟女|老版| 岛国AAAV| 丁香婷婷免费| 欧美日韩一区二区三区四区| 五月天另类小说久久小说网| 狠狠艹狠狠艹| 婷婷丁香97| 日逼影音先锋AV男人资源站| 综合五月草 | 婷婷五月激情图片| 精品二区| 五月天激情在线视频| 欧美性爱五月天| 久久精品日| 五月丁香六月婷婷在线播放| 99精品网| 婷婷五月综合婷婷| 色五月欧美| 丁香六月综合激| 五月天久久综合婷婷丁香| 三人荫蒂添的好舒服A片| 婷婷激情综合网| 啪啪 综合网| 69色婷婷| 久久久久思思热| 国产真人做爰视频免费| 99热这里只有在线播放| 国产日韩欧美性爱| av成人在线播放| 亚洲色激情| 五月色亭丁香| 五月婷婷网站| 久热免费视频| 伊人婷婷青青cao| 99久久九九| 久久伊人大香蕉| 五月激情偷拍| 思思热久久艹| 婷婷亚洲天堂| 草综合网| 超碰av在线| 久热久色| 九九热最新| 久久九九99字幕| 激情五月天婷婷播播久久综合91 | 亚洲激情久久| 激情综合网,五月| 91无码一区人妻A片蜜|