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

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上下文快照、單元測(cè)試框架及典型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/示例工程和測(cè)試程序比如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ī)做測(cè)試直接把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è)簡單測(cè)試用官方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示例里測(cè)試確認(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)化測(cè)試用的瀏覽器內(nèi)核和 CEF 不是一回事。不過有些同學(xué)會(huì)把它們搞混。Playwright 是一個(gè)測(cè)試框架它下載 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)行??刂其秩具M(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ú)立的測(cè)試工程里調(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
返回資訊列表
色综合加勒比四四季| 隔壁邻居波多野结衣中文字幕 | 欧美黑人168页欧美黑人167| 欧美劲爆视频一区二区| 天天狂操夜夜狂日| 18一区二区三区| 国产综合在线视频网站| 日本一二三免费久久| 午夜丁香婷婷| 亚洲春色欧美激情自拍| 欧美97se| 日韩天堂av电影在线观看| 一区二区三区美女超清| 色悠悠伊人网五月天| 人人看欧美性爱| 日本高清视频在线观看黄已三辽| 亚洲AV无码天美传媒一区| 亚洲 欧美 制服 另类 自拍| 天天综合网在线91| 天天拍天| 亚州中文字幕超碰97| 91丨九色丨熟女高潮| 欧美激情久操网| 久久人妻一区二区三区高清| 涩亚洲欧洲| 青青草字幕AV| 亚洲97| 中文字幕诱惑制服人妻丝袜美丝袜美| 九九色图| 激情一区二区三区在线观看| 婷婷伊人| 亚洲欧美精品一区天堂久久 | 久久亚洲国产成人| 欧美高清色| 美女骚尻视频| 久操视频免费观看| 天操天操夜操夜月月年年操操| 亚洲天堂另类小说男人| 日本一二三高清| 欧亚乱色熟一区二区三四区| 欧美极品女人的天堂| 婷婷综合网| www.色操逼| 2020国产精品| 麻豆黄色五月天| 大香蕉伊利av| 日韩精品人妻中文字幕久久久| 久超碰在| 色婷婷五月天| 97色诱| 中文字幕超碰CAO| 少妇内射www在线观看视频| 天美精品一区二区三区四区在线观看| 另类av天堂| 日韩精品电影| 另类专区加勒比| 欧美图片色五月天| 亚洲毛片久久| 欧美aa一级片| 久久久久深夜无码| 秋霞曰韩R级| 亚洲一区二区三区四区视频| 亚洲综合九九| 操B久久| 欧洲大香蕉| 试看福利| 明星性猛交ⅹxxx乱大交| 最新国内自拍av免费| 亚洲成人av电影在线| 久久久久国产无av| 韩国女主播青草在线| 香蕉大久久久| 啪啪啪东京| 亚洲五月丁香花狠狠干一区二区三区 | 91情色在线| 国产毛片毛片4p懂色| 国语av最新自产拍在线观看| 欧美亚洲丝袜美女电影| 欧美一二三| 国产精品无码AV网站| 91 丝袜在线| 国产福利精品98视频| 嫩呦国产一区二区三区AV| 日本日皮视频逼| 人人综合| 麻豆国产视频精品观看| 美女诱惑爱爱| 永久电影三级在线观看| 麻豆精品久久久久久久| 欧美 亚洲 在线| 唐山老熟妇露脸啪啪叫| 中文字幕日韩情色| 午夜福利免费精品视频| 性爱欧美五月| 51一区二区三区| 精品人妻一区二区三区视频| 九九玖玖精品| 男女国产精品| xxxx网站亚洲精品| 丝袜亚洲91| 丰满少妇乱子伦精品无| 狠操91,com| 人妻精品视频一区二区| 97免费视频在线| 国产刺激视频| 成人av性爱电影在线观看| 好吊色一区| 色噜噜精品一区二区三| 天天舔天天日天天射| 强奸乱伦资源| 97久久网| 中文字幕人妻丝袜乱一区三区| 亚洲av强奸乱伦| 国产在线播放成人免费| 日韩精品大香蕉伊人在线| 麻豆啪啪啪视频| 欧美成97爱| 91新在线欧美| 五月丁香啪| 日韩黄片视频试看| JuliaAnn丝袜熟女系列| 在线中文AV| 亚洲天堂电影精品一区| 国产 日韩 欧美 中文 另类,国产 欧美 另类 制服 变态,高清 日韩 欧美 中文,高 | 无码天天操| 亚洲中文字幕一区二区| 精品9区| 超91综合网| 亚洲国产综合视频| 久久超碰日韩精品| 免费精品AB| 亚洲91网。| 男人亚洲91首页在线| 国产精品一区二区三区四区五区| 激情看片网站| 久久大黄片| 校园春色 亚洲| 91欧美性| 一级免费精品| 中亚黄色三级大片| 天天射夜夜| 欧洲乱码一区二区| 操逼精品视频| 美女黑人91神马| 五月天色图影视| 日本高清久久| 欧美日韩国产传媒在线精品| 國產尤物AV尤物在線觀看| 91精品人妻一品二品三品| 91精品久久久久久77777| 超碰精品人妻狠狠干| 日日夜夜骑| 亚洲激情欧美色图| 久久骚少妇| 啊啊啊啊嗯嗯嗯用力好爽| 亚洲男人的天堂亚洲| 97在线视频观看| 混色激情av| 超碰碰碰碰| 国产精品久久久久久久毛片1| 亚州欧美另类| 九九av| 国产青青综合伊人| 97超碰超| 色狠狠 - 百度| 亚洲美乱| 五月丁香成人网| 黄aaaaaaaaaaaaaaaaaa色网站| 97香蕉碰碰人妻国产欧美| 淫妻综合网| 香蕉久久精品| 久久系列| 国产精品久久天天干| 亚洲天堂一区二区久久| 亚洲色图A| 免费AV中文网在线观看| 性开放中文AV高清无码免费看| 影音先锋乱| 天天干2019| 热热色综合网| 嫩草在线视频| 天天日天天插| 亚洲激情深爱文学小说网站| 男女激烈网站最新| 麻豆2区1区天美| 91视频观看网站| 91欧美另类| 亚洲春色一区二区三区| 色啪网| 天天综合麻豆视频| 亚洲欧美在线观看无码| 偷窥自拍亚洲色图| 亚洲日韩国产精品| 蜜色网色哟哟| 可免费观看的av毛片中日美韩| 3p国产欧美99热| 熟女一区二区三区| 成人亚欧免费视频| 97久久国产亚洲精品超碰热| 中文字幕日韩电影人妻| 精品一区二区麻豆| 交换娇妻呻吟声不停中文字幕| 日本美女性生活久久久久久久| 97色操| 色婷婷五月天| 亚洲丝袜综合| 啊啊啊啊啊在线视频| 久久人妻| 天天摸天天舔天天操| 最近2018中文字幕在线高清第一页 | 五月婷婷激情综合| 亚洲视频精选| 少妇毛片久久| 亚洲人妻色图| 天美传媒av 在线| 尹人大香蕉视频在线| 十八禁一区二区无码观看| 在线无码视频| 色吊丝 日日骚 清纯唯美| 婷婷激情啪啪| 亚洲国产奇米影视久久| 女人的天堂大香蕉网| jizzjizz欧美| 超碰色综合| 国产精品欧美激在线| 国产欧美日韩精品中文| 男人的天堂1024| 欧美色图成人网一区二区 | 午夜丁香婷婷| a片久久久久久久久久久久| 男人的天堂在线| 久久精品国产亚洲AV嘿嘿| avav青青草久久夜| 天天操天天看| 亚殴在线| 国产精品久久久久亚洲av| 精品国产乱码久久久久久久久久毛片| 9999久久久久| 国产精品一区午夜福利| 新亚洲无码| 91中文字幕在线观看| 91黑丝美女| 久久久久免费少妇| 久热99| 日本性爱不卡视频| 欧美色涩| 加勒比中文av| 欧亚日韩中文在线| 男人的天堂久久| 欧美色道啊| 内射日韩大臀美女| 五月天婷婷色色| 18禁中文字幕| 91午夜无码| 手机在线免费看的av| 色欲天香天天综合网-成年人三级片网站-欧美乱妇狂野-日韩国产专区-久久久久久 | 亚洲图片 激情小说| 日本韩国一本产品小视频日本韩国一本产品久久久产品小视频日本韩国一本产品久 | 久久超碰久| 久久久久人妻二区精品叶可怜| 亚洲中文字幕熟女少妇一区二区| 久久久久久人| 密臀视频三区免费网站| 国产粉嫩蜜臀av一区二区三区| 精品性爱久久视频| 九九免费影片| 黄色成年| 人人操人人干xxx| 一本色道综合久久欧美| 探花视频免费观看国产专区| 国产精品爆乳懂色蜜乳| 国产亚洲精品美女久久久| ,成人免费啪啪视频| 欧美一级A一级a爱片久久| 欧美片第一页| 国产精品一级特黄aaa大片在线观看| 日本操逼视频导航| 婷婷五月色| 亚洲瓯美色图| 日本免费二区三区| 1769国内精品视频| 色婷婷网| 天天享受天天看| 色九九久九九| 高清有码一区二区| 五月丁香社区婷婷日韩欧美精品影院| 青青草中文-久久青草精品一区二区三| 久久久久成人蜜桃精品| 久久夜精品一区二区三区| 97一区二区三区视频| 亚洲高清内射| 好吊妞转入那个网| 欧美亚州色的图| 青青草国产欧美非洲黑人| 啪啪啪东京| 少妇99成人麻豆| 丝袜视频一区二区在线播放国产中文 | 日产国产精品中文久久婷婷| 黑白配性爱AV成| 人人操肉肉| 偷拍 精品另类 凸凹了四区| 亚洲综合校园春色| 国产又黄又爽又刺激久久久久久| 好淫网一二三视区| 女生91网站| 亚洲图片欧美在线视频| 死我十八禁| 激情抓乳插进去啪啪啪日韩| 欧美 综合| 91插B网站| 曰韩操B| 久久只有精品一区二区三区| 综合久久97| renqi久久久久久久久久久久| 另类老少妇| 九九热在线精品视频| 久久香蕉国产线看观看亚洲女人| 国产精品青草综合久久| 麻豆天美在线| 97人妻碰碰中文无码久热丝袜| 日韩青久久| 丁香五月天社区| 欧美日韩国产色五月综合在线| 精品午夜福利国产一区二区在线观看| 九九热精彩视频| 国产激情av女片自拍| 亚洲日韩97| 丁香五月婷婷基地| 无码人妻一区二区三区色欲aⅴ | 色欲久久99精品久久| 婷婷久久久| 久久久久久久免费A片国产成a人亚洲精∨品无码 | 在线精品福利免费播放| 强奸xx国产| 亚洲人妻色图| 神马久久久久久久久久久久| 国产人伦a片信息免费片| 亚洲欧美综合网站| 国产熟女少妇一区| 强奸乱伦中文字幕AV| 超碰色大香蕉| 日本黄页视频在线观看| 国产精品亚洲一区二区三区四区| 日韩性爱一级片| 日本黄色裸日本黄色裸体 | 人妻超碰青青草98| 在线观看十八禁| 99久久久er直播网址| 中出欧美| 欧美日韩中文字幕人妻| 人人爽夜夜玩视频| 二三四区精品| 97人人爱人人做人人乐| 3d成人精品一区二区| 试看60秒 爽| 婷婷性网| 亚洲国产97在线精品一区| 夜夜操一区二区| 美女高潮视频91| 又大又白奶子| 欧美日韩高潮喷水91| a片 xxxx受爽视频| 中文字幕AV中出| 青青草狠狠撸| 亚洲色图美腿丝袜| 天天爽夜夜欢视| 亚洲精品色| 亚洲色图 欧美热图 清纯唯美 另类自拍| 操逼视频免费日韩无码| 全免费a敌肛交毛片免费| 精品人妻一区二区三区在| 亚洲天堂另类| 日本不卡一区二区| 国产精品 视频| 日韩操啪| 不卡av免费在线网址| 久久久久亚洲Av无码专区老牛影视| 人人操人人操人人操人人操人人操人人人11.CM | 欧美九9 9 9| 久热这里| 精品国产99| 东京热精品97综合网| 国产一区二区三区久久精品太古里| 亚洲aV性爱| 曰本人妻人人澡人人夹| 91站街按摩店老熟女熟女| 色婷婷激情| 久久夜色一区二区| 97超碰中文字幕| 啊啊啊慢点| 黄色成年| 国产av又色又爽又黄| 欧美精品99久久久| AV天堂男人的天堂| 日韩精品99999| 日本啊啊啊啊啊视频| 女同性恋中文字幕| 精品人妻15区| 人人操人人插人人摸人人干| 色优久久| 熟女91网| 欧美AAAA黄片| 色色婷| 久久综合久色欧美综合狠狠| 丰满人妻一区二区三区免费| 日本激情免费大片| 国产老熟女| 精品午夜福利| 国产性久久久| 欧美97日韩| 亚洲天堂2020| 能看的AV| 久久久一区二区三区麻豆| 亚洲一级性爱视频免费看| 天天操综合网| 天天拍夜夜| 免费观看啪视频| 果冻传媒A片一二三区| 国内精品嫩模A∨私拍小视频| 丁香激情网| 欧美精品亚洲精品日韩传电影| yazhououmeizongya| 天天看天天在线精品| 亚洲欧美爆| 日韩免费簧片| 天天日天天射天天干| A 在线网址| 综合亚洲欧美| 日韩Va亚洲va欧美Ⅴa久久| 97精品97| 亚洲激情在线观看一区| 日本久久综合| 999国产精品999| 精品国产综合久久福利,热99这里有精品综合久久,99热这里只有免费国产精品,精 | 久久一二三四| 欧美一级黄片免费播放| 日韩精品午夜操呦呦不卡影院| 大香蕉www.超碰| 精品人妻一区春色| 亚洲色欲天天人妻无码系列专区| 亚洲综合伊人无码久久| 婷婷在线视频| 96久久久久| 久草资源欧美在线视频| 国产麻豆福利av在线播放| 九九九不卡| 91久久婷婷| 国产区日韩区在线观看| 一直超碰| 精品国产www久久| 3PAV乱伦视频| 欧美精品双插| 天天看天天综合成人网| AV网站高清无码在线观看| 日韩有码中文字幕女同性恋| 综合激情97 | 亚洲国产第一页综合视频| 外国免费性情大片| 2017天天插| 日韩美女高潮喷水视频| 婷婷丁香六月| 人人摸人人添人人操| 人人搞人人插人人操| 岛国不卡超碰护士AV在线播放| 欧美亚洲色图另类国产| 黄色视频高清无码网站| 青草一区二区| 亚洲情色在线| 综合色图区| AV九九| 欧美一区二区三区日韩| 欧美一区二区三区另类精品| 日本成人免费一区二区三区| 天天爽天天爽| 婷婷视频在线免费观看| 欧美 日韩第一性色| 鲁鲁色综合网| 蜜桃视频精品一区二区| 夜夜草网站| 成人五级久久| 狠狠爱AV| 久久久久久久久久久999| 人人爽夜夜操| 撸撸成人在线视频| 国产第11页| 日本 免费 一区二区三区 久久香蕉| 女人午夜视频777| 8050午夜少妇无码| 91 在线亚洲| 日本理论在线| 久操视频免费在线观看| 另类av天堂| 江都AV在线| 99热精品国产| 久久视频,这里只有精品| 伊人9| 香蕉综合网| 日本成人免费一区二区三区| 日本一区二区亚洲综合| 亚洲综合九九| 91动漫操逼视频| 黄片aaaaa一区| 天堂九九九九九九九九九| 樱花草社区www中国| 亚洲图片偷拍欧美| 婷婷人妻激情| 十八禁视频一区二区| a片久久久久久久久久久久| 88xx成人精品视频| 五月激情天| 日韩激情视频| 中文AV制服乱伦| 久久极品一区二区| 9精品久久久久| 日韩乱伦视频| 亚洲图片视频小说| 在线国产一区二区av| 一本一首道人妻少妇免费久久| 国产97亚洲| 久久曰曰| 91 欧美| 东北女人av| 亚洲av噜噜噜噜噜噜| Julia在线播放亚洲久久| 九t超碰| 99热这里只有精品8| 91亚洲综合在线| 99热色精品| 久久视频,这里只有精品| 欧美成人精品一区二区男人蜜臀| 国产日韩在线播放av| 999综合色| 成人八戒网站| 色图综合| 天天影视射综合网| 天堂8在线新版官网| 骚妻少妇精品性色无码四色A V| 免费中文在线| 欧洲在线性爱视频| 欧美亚洲AN| 超碰99在线观看| 羞涩视频| 天天干夜夜操一区二区| 五月丁香啪啪啪| 一级二级三级黑人无码| 久久久久久免费电影| 性感女人网页在线观看视频| AV一区观看| 精品人妻一区二区三区鲁大师| 中文字幕一区 二区三四五 区日 日骚| 97精品一区二区视频| AV99热18这里只有精品| 狠狠干综合| 欧美另类综合久久| 一级毛片电影免费看| 劲爆欧美人妖三区91| 啊啊啊啊视频免费| 99综合免费视频| 在线岛| 2019天天干| 国产97在线播放| 超碰久久草| 天天操女人| 91粉芽高清在线一区二区| 五十路六十路七十路熟婆| 91天天综合日韩欧美| 色偷综合| 99国内熟女露脸视频| 欧美中文字幕一区 | 黄色无码高清黄色无码网站| 疯操AV| 日韩精品资源| 97在线日韩中文字幕| 黑人精品久久97| 久久久熟妇熟女国产| 台湾佬中文娱乐自偷自拍| 久久久草成人网站久久久草成人久久久草久久久| 俄罗斯一区二区视频在线观看| 国产综合色精品在线观看| 国产白丝网站| 97超碰碰| 日本伦乱九九九综合| 干超碰碰熟女| 亚洲无线观看久久| 97亚洲国产影视| 欧美一二三| 骚鸭AV| 欧美 亚洲精品首页| 久久久无码视频| 国产白丝精品在线观看| 91久久久亚洲| 国产大学生口爆吞精合集| 中文字幕乱在线伦视频中文字幕乱码在线| 日韩三级在线观看网站| 欧美综合娱乐久久| 国产黄色av大片网站| 婷色五月天| 亚洲精品一二三四区| 99久在线精品99re8热视频在线| 四虎精品一区| 国产又黄又粗又猛大片| 操逼操逼视频操逼| 精品久久久久,69国产成人精| 啊a一区在线| 超碰在97| 在线视频免费观看午夜| 热99这里只有精品| 人人操天天爽| 果冻传媒A片麻豆熟妇人妻| 亚洲阿v天堂在线| 激情综合网五月婷婷| 亚洲色图欧美色图制服丝袜 | 久久久久亚洲一区女同性恋中文字幕| 久久熟女嫩草成人片免费| 人人看人人插| 美女刺激久久国产欧美| 91日韩网站| 日韩无码黄色片| 天天日日本| 欧美天堂在线| 久久久九九网站| 嗯嗯啊啊好疼| 人人操人人摸人人看人人插| 正在播放:深夜激情大战,自带黑丝袜全力输出骚穴 | 亚洲美女30b| yiqicaoav| 亚洲天天艹| 久草资源在线| 久久久一区二区三区四曲免费听| WWW美腿丝袜香蕉中文| 国产日韩欧美操逼视频| 97色色国产视频| 欧美日韩在线视频网站| 天天综合网久久ww| 国产性爱强奸乱伦大全| 超碰午夜在线| 无码久久国产| 青青草成人视频在线观看二区| 欧洲在线性爱视频| 97大色网| 大香蕉久| 精品无人区麻豆乱码1区2区图片 | 黑人精品久久97| 久久东京国产精品视频| 亚洲综合中文字幕有码| 亚州熟妇精品| 亚洲国产成人高清在线| 91少妇高潮| 麻豆60秒| 久久首页| 青青草公开在线免费不卡视频| 亚洲AV成人无码一区二区三区在线观看| 欧美亚洲清纯| 久久精品欧美一区蜜桃| 一区操逼| 青青草公开在线免费不卡视频| 女人天堂AV五区在线| 久久性生大片免费观看性| 97人人爱人人做人人乐| 久久激情亚洲精品无码?V| 理论久久婷婷网8| 欧美夜色| 亚洲丝袜二区| 国产亚洲禁久一区二区 | 伊人久久大香大香线蕉中文| 国产高清自拍视频| 久热精品在线| 日韩精品9999| 久久久久久中文字幕中文字幕最新| 中文字幕乱码人妻二区三区| 久操免费观看| 肉丝中文无码高清| 91殴美大片| 欧洲色色| 久久综合九九| 国产操操日韩三级黄| 婷婷av在线中文字幕| 中文字幕一区二区无码成人 | 国产中文大片资源中文字幕| 老熟女区| 天天摸,夜夜摸| 蜜桃传媒视频第一区入口在线看| 欧美性爱另类综合| 人人操人人狠狠操| 丁香五月天堂| 人妻天堂综合网| 色香色香欲天天天影视综合网| 日韩AV一区二区三区四四| 91校园春色长篇| 无码99| 91 国产丝袜在线放观看 | 五月婷亚洲精品天堂| 精品九九| 日韩无码a片| 国产综合永久精品日韩鬼片| 九九综合久久| 人妻熟女午夜精品在线| 久久久久密| 男人久久精品| 亚州精品人妻一二三区| 男人的天堂一区| 色欲Av人妻精品一区二| 免费的很黄很污的全部视频| 精品一二三区久久AAA片| 久久综合九九| 熟女中出视频| 亚洲综合色在线| 91国模| 亚洲无码太久| 色婷婷五月综合激情中文字幕| 蜜臀少妇一区二区| 美女大乳久久久久久久女人18| 人妻丝袜肏逼| 色妺妺AⅤ| 嫩呦国产一区二区三区AV| 偷看洗澡一二三区美女| 色一射色一射| 夫妻AV网站| 韩国免费播放一级毛片| 亚洲中文字母在线播放| 久久手机好看网站| 精品妇操一区二区三区| 蜜臀久久99精品久久久久久-DVD原版全| 国产最火爆久久国产网站网站| 欧美成人午夜免费福利785| 日韩pv中文| 日韩色图 一区二区| 粉嫩av在线| 爽 好舒服 无码刺激久久| 91精品啪在线观看国产城中村| 色色婷婷五月| 国产精品久久久999| 九九AV| 国产精品无码AV网站| 大香蕉综合| 91丝袜人妻| 国产精品亚洲无码| 99热超碰| 免费视频观看60秒| 中国大陆国产高清AⅤ毛片| 天天综合91在线| 国内成人圈中文字幕无码视频| 日本αv| 看日韩美女二区三区免费操逼视频| 成人黄页| 国产多人在线观看视频| 天天操夜夜操| 亚洲双插| α√在线| 久草草一二三四区久久| 日韩操啪| 99中出在线| 久久女人| 一区二区三区机械有限公司| 91老熟女老女人国产老太| 日本操逼视频免费| 这里只有精品视频| 91亚洲最新在线| 欧美系列在线一区二区| 欧美78| 91东京热男人的天堂| 啊啊啊啊啊在线观看网址| 亚洲人妻色图| 91一起操| 骚货操死你| 乱伦熟女区| 久久成人网站| 亚洲熟女av日韩熟女| 嗯~啊~快点 死我视频免费看网站| 成人性爱AV在线免费观看| 欧美 中文字幕 一区| 翔田千里AV无码秘 三区| 蜜臀少妇一区二区| 国产传媒一区二区三区| 男人的天堂不卡一区二区| 中文字幕AV中出| 日韩操人| 日韩熟女精一区二区三区不卡| 久久婷婷五月综合| 亚欧美综合网| 99热超碰| 91色人妻| 中文字幕文字幕无码一区二区三区电影99| 欧美性爱无码一区二区三区| 偷拍在线观看视频| 欧美大香蕉久| 精品一区二区成人动漫| 九色 蝌蚪 熟女自| 99久视频| 亚洲欧美日韩中文播放| 熟女色图在线| 国产高清精品一区二区三区毛片| 97色涩| 成人免费不卡在线视频| 黑人性欧美| 久久国产精品一级二级三级| 欧美不卡五十路| 99热免费精品| 美國A片| 亚洲欧洲日韩中文字幕一区| 日韩欧美视频青青| 国产午夜福利专区综合| 91欧美另类| 大香蕉丝袜一级片| 中文字幕蜜乳av| 欧美日韩国产电影| 人人爱人人操人人性| 97综合激情| 天天日日日射| 一级久久久久久久久久久 | 国产极品999| 欧美性爱第一区| 大色网久久| 大香蕉伊人一区在线观看| 亚洲欧美综合区自拍另类| 蜜臀中文无码午夜| 日韩一区二区熟女| 高跟丝袜AV专区国产| 亚洲精品欧洲色| 超碰97最新人妻| 国内三级自拍小视频在线观看| 日韩97| 国产精品97超碰| 97精品国产97久久久久久户外免费| 操逼天美3区| 亚洲黄色AV电影| 亚洲熟女乱熟乱熟妇综合网二区| 国产懂色精品国产av| 国产捆绑一区| 精品人妻一区二区三区蜜桃视频| 天天淫人人妻日日色| 久久久久久国产手机AV| 久久大黄片| 色欧美色交综合| 狠狠搞 亚洲91| 色激情五月天| 久久精品中文字幕无码l| 久久久人妻| 亚洲综合另类色图| 国产精品 午夜福利| 成功精品影院| 人人人人插| 日本孕妇一区二区视频操逼免费看 | www.男人天堂| 无码heyzo高清一区| 日韩乱伦视频| 亚洲 日本 国产 综合| 天天综合-91入口| 日本不卡一区二区三区| 久久伊人在线五区| 久久9视频| 婷婷丁香五月天亚洲天堂网| 被操高清无码视频| 97免费在线观看视频| 亚洲天堂久| 天天色怡春院| 情色五月天久久久| 按摩中文字幕| AV天天在线观看| 中日高清无码操逼视频| 精品国产丝袜一区二区三区乱码| 97在线免费观看视频| 97亚洲自在精品在线观看| 加勒比海成人视频网| 亚洲av总站| 国产精品乱人伊人网| a网站免费观看| 婷婷深爱五月| 性爱乱伦一区| 久久久精品无码亚免费| 做爱A级亚欧| 91午夜无码| 国产乱伦亚洲| 人人艹亚洲| 国产日韩精品人妻久久久久色欲网站| 在线毛片片免费观看| 粉嫩av在线| 亚洲无 码A片在线观看麻豆| 丝袜综合网| 91第一页| 欧美色人| 99久久久无码国产精品性啊聊| 色综91| 亚洲国产精品无石码久久| 91欧美经典| 天久久久噜噜噜久久国产精品爽爽| 四虎精品永久在线观看| 无码人妻毛片丰满熟妇精品区| 免费超碰97久久| 麻豆区久久久久亚| 国内精品久9| 色亚洲欧美| 一区二区三区看视频| 欧美综合色,www| 亚洲加勒比| 亚洲精品国语在线播放| 老子午夜伦不卡影院| 伊人久久在线视频观看| 乱论91| 欧美在线干| 久久久久久久一级黄色打同平台| 少妇99成人麻豆| 人妻 欧美 中文| 美女网站黄页| 成人性交午夜免费片| 欧美亚洲天堂| 国产9 9在线 | 亚洲| 一区二区影院| 99碰碰| 啊啊啊啊啊操我视频| 国产成人天堂| 蜜汁欧美| 亚洲中文字幕在现观看| 午夜无遮挡男女啪啪视频| 亚洲中文日韩精品| 日韩av女优在线免费一区| 激情文学欧美| 四虎免费在线播放| 精品综合久久久久久五月天| 成全在线观看免费观看| 亚洲精品三| 亚洲人在线| 超碰综合97在线| 国产精品免费久久久久久久久久| 欧美性爱91| 99免费在线视频| 欧美日韩电影一区二区| 亚洲色综网| 青青操网| 日韩成人大片一区二区| 九九九九九九九九九九九免费国产| 青青草男人天堂| 91观看 国产白丝| 亚洲,日韩,欧美,成人播放| 无码自拍SM| 91色爽欧美| 欧美日韩制服| 国产高清精品一区二区三区毛片| 激情av| 亚洲 另类 丝袜 自拍 动漫| 中文字幕一区二区三区人妻不卡 | 天天操夜夜操狠很操| 97精品综合| 少妇精品久久久| site:sinbotex.com| 亚洲最大的综合性av| 伊人青青一区成人视频在线观看区| 亚洲精品黑丝| 国产精品不卡一区二区三区av| 日韩女模中文造逼| 人妻 制服 日韩 中文 在线| 女优大全 - 91n| a天堂视频| 91色噜噜狠狠| 亚洲国产天堂| 91在线精品| 欧美韩国你懂得在线| 97超碰美女| 国模精品娜娜一二三区| 日本五十路在线| 另类图片欧美激情综合| 婷婷五月天成人| 长久操视频| 极品综合| 国产久久久9999| 亚洲成人ab| 天天天天天干夜夜夜夜夜操| 国产噜噜噜噜噜久久久久久久久| 91在线视频国产网站| 婷婷五月天AV| 国产黑白丝在线| 免费作爱一级视频| 91网站视频在线观看| 久久精品国产精品一区| 91一区二区| 78精品| 香蕉婷婷| 欧亚 另类 久| 综合久久中文字幕综合日韩精品| 日产123区精品免费观看| 国产高清精品一区二区三区毛片| 精品人妻一区二区三区-国产精品| 亚洲色人阁| 五月综合激情网| 中文不卡视频| 激情开心五月天| 99re视频在线播放青草| 亚洲综合成人网| 97色操| 99无码| 欧美色视| 9/A片| 国产自制av蜜乳| 中文字幕精品丝袜| 欧美不卡在线一区二区| 欧美亚洲国产自久久| 成人小说另类在线| 熟女自慰久久久| 亚洲精品一二区| 久久精品高清无码一区| 成人免费在线网站| 999久久久久久久久| 五月丁香六月婷综合成人综合| 国产综合久| 日日夜夜干| 免费a v| 亚洲天堂自拍| 在线国产福利网址导航| 91国产丝袜美女| 亚洲av强奸乱伦| 啊啊啊免费| 亚洲91亚洲| 国产高清26uuu| 久久超碰天天| 亚洲男人的天堂亚洲| 91美女视频| 国产乱弄免费在线视频。| 无码最新| 97欧美综合网| 中文字幕91综合| 欧美91视频| 超碰在线成人电影| 水澄无码AV| 嫩草在线视频| 久操免费电影| 亚洲精品蜜桃久久久一区二区三区| 26uuu国产亚洲综合| 尤物视频网 刘玥| 五月婷婷色| 秋霞免费无码视频日韩A片| 999九九精品| 色优久久| 男人的天堂午夜av| 中文字幕精品三级久久久| 黄色网址久久精品欧美喷水| 欧洲欧美视频一区二区| 久久九九久精品国产尤物|国产精品爽黄69天堂A片潘金莲,国产亚洲精品第一综合 | 肉丝网站91| 亚洲成人久久一区二区| 91性片| 色超碰综合| 99精品久久| 成人精品久久久午夜福利| 天操天操夜操夜月月年年操操| 亚洲色鬼| 亚洲精品一区二区三区在线播放| 欧美综合亚洲综合| 人妻丝袜肏逼| 国产精品老熟女一区二区| 草草影院日本第一页| 黄页av| 中文欧丝袜诱惑| 99精品丰满人妻无| 在线观看黄色电话| 国产精品国产亚洲区艳妇糸列| 亚洲加勒比色图| 欧美午夜色妇色鬼| 成人在线日韩| 欧美强奸乱能| 9色国产精品一区粉嫩| 97精品一区| 美女诱惑在线一区| 精品久久視頻在线| 欧美一级做a爰片免费视频| 国产亚洲色停停久久99精品91| 欧美精品不卡一二三四在线91| 国产男女无套97| 夜夜爽33333| 国产精品久久久久久久久AV大片 | 亚洲色图欧美| 亚洲欧美天| 很很很很操| 欧美性色综合网| 加勒比无码一区二区三区| 影音先锋乱| 偷拍亚洲熟女视频播放| 少妇久久久久久| 欧美亚洲首页| 久久天堂网| 激情视频一二三| 亚洲蜜臀懂色| 日韩专区数据列表-第3230页-精品国产一区二区三区香蕉 久久99熟女人妻中文字 | 国产免费一区在线观看| 99国产精品视频尤物| 熟女激情综合网| 亚洲天堂精品日韩电影| 超碰超碰超碰超碰的大鸡吧操黑丝袜| 色网1| 久久草视频污视频| 亚洲AV无码久久精品蜜桃小说| 精品熟女一区=区三区| 蜜臀av在线播放一区二区三区| 凹凸视频特色日本特黄| 黄色大香焦1级‘′‘| 日韩一级特黄av毛片| 九月激情婷婷| 国产乱色国产精品免费视| 极品综合| 八戒无码国产午夜福利| 日韩操p| 日日操免费视频| 国产乱伦亚洲色图高清无码| 欧美午夜视频| 91超碰人人操| 成人av动漫在线观看| 肉嘟嘟www视频在线观看高清| 在线一道啪| 乱伦av国产| 精品一区二区人妖| 日本高清一区二区在线| 在线观看黄色电话| 立川理惠无码一区二区| 婷婷91| 国产按摩一区二区三区| 亚洲,欧美,春色,另类| 欧美第一页性| 亚洲色图 欧美热图 清纯唯美 另类自拍 | 天美AV片| 亚洲国产剧情少妇激情| 中文字幕55555| 无码视频一区二区| 二三四区精品| 九九九九九九免费视频| 9精品久久久久| 亚洲在线91| 18禁在线视频| 干干干天天| 岛国成人av在线播放网址| 欧美色五月| 67914在线精品观看| 神马久久啊啊| 欧美啪啪天堂| 人人妻人人玩人人澡人人爽| 国产 日韩 欧美一区| 亚洲精品性爱片| 白嫩国模丰满一二三区| 9+1视频网址| 欧美亚洲丝袜美女电影| 91天射| 少妇精品| 被操高清无码视频| 国产熟女完整版中字| 婷婷丁香五月激情啪啪| 色哟哟国产精品免费网址| 最新av在线| 九久久九九久视频| 富女玩鸭子一级毛片| 搡老人老9丨女老熟人| 久久免费精彩视频| 啊灬快c我灬啊灬用力灬啊灬-国产精品性做久久久久久-成人AV | 天天做天天爽| 欧美激情超碰777| 久久久久幕乱码| 26uuu最新| 欧美v亚洲v日韩v最新在线二区 | 丁香五月激情综合国产| 欧美日韩国产中文精品字幕自在自线, | 久久精品国产精品亚洲艾通辽熟妇| 伊人久久国产免费观看视频| 二级毛片|