99精品久久精品一区二区-亚洲熟妇无码?v在线播放-日本国产精品无码字幕在线观看-久久久亚洲永夜AV-亚洲一级无码一区二区一-免费国产成高清人在线视频-中文字幕乱码免费观看-国产毛片精品妇女久久久

ARTICLE DETAIL

資訊詳情

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

Electron打包三件套:electron-builder、NSIS與winCodeSign實(shí)戰(zhàn)解析

Electron打包三件套:electron-builder、NSIS與winCodeSign實(shí)戰(zhàn)解析 簡介這是一套面向Electron桌面應(yīng)用開發(fā)者的打包依賴環(huán)境全家桶專門解決新下載的Electron項(xiàng)目在構(gòu)建安裝包時(shí)因依賴不完整而頻繁報(bào)錯(cuò)的問題。壓縮包內(nèi)集齊三件核心組件electron-v8.5.5-win32-x64提供應(yīng)用主程序運(yùn)行環(huán)境nsis-3.0.4.2負(fù)責(zé)生成Windows安裝引導(dǎo)程序winCodeSign-2.6.0則用于代碼簽名與證書校驗(yàn)三者均為Windows下的兼容版本可整體解壓后復(fù)制到C:\Users\用戶名\AppData\Local\electron\Cache目錄下直接調(diào)用無需手動(dòng)逐一下載匹配版本。資源整體為7z壓縮格式體積約356.44MB內(nèi)含三個(gè)組件對(duì)應(yīng)的完整文件集合解壓后即可按目錄結(jié)構(gòu)使用。對(duì)于剛接觸Electron打包的初級(jí)開發(fā)者或需要快速搭建打包環(huán)境的工程師這套文件能顯著降低環(huán)境配置難度避免因缺失簽名工具或NSIS模板導(dǎo)致的反復(fù)失敗。目前已有1548人學(xué)習(xí)下載適合作為本地打包環(huán)境的備件庫。1. 周五下午你卡在三個(gè)綠色文件夾上Electron 打包全家桶到底在裝什么周五下午急著發(fā)一版 exe 出去electron-builder 在日志里安靜地寫“Downloading electron-v8.5.5-win32-x64.zip”進(jìn)度條繞了十分鐘你才在緩存目錄里看到三個(gè)帶版本號(hào)的文件夾electron-v8.5.5-win32-x64、nsis-3.0.4.2、winCodeSign-2.6.0打包才真正跑起來。這就是常說的 Electron 打包全家桶Electron 本體負(fù)責(zé)運(yùn)行時(shí)NSIS 負(fù)責(zé)把應(yīng)用卷成安裝程序winCodeSign 藏著一組改圖標(biāo)、寫版本號(hào)、打數(shù)字簽名的工具。很多用 electron 技術(shù)棧的人都被這三個(gè)包折磨過——不知道它們從哪來、缺了會(huì)怎樣、版本為什么不能亂動(dòng)。這篇就拆開講清楚版本關(guān)系、最小配置和實(shí)際踩過的坑適合正在用 electron-builder 在 Windows 上出安裝包、被體積和簽名問題反復(fù)折騰的開發(fā)者。2. 版本對(duì)應(yīng)關(guān)系與離線依賴先把鏡像、緩存和三個(gè)包的依賴鏈捋順2.1 為什么是這幾個(gè)版本electron-builder 的版本鎖定邏輯把這三個(gè)版本號(hào)當(dāng)成“黑匣子”是最常見的狀態(tài)。它們其實(shí)不是你自己指定的而是 electron-builder 在打包時(shí)按內(nèi)部鎖定的版本去下載的electron-v8.5.5-win32-x64 對(duì)應(yīng)你項(xiàng)目里裝的 Electron 運(yùn)行時(shí)nsis-3.0.4.2 是 electron-builder 定制的 NSIS 引擎winCodeSign-2.6.0 則是一套 Windows 簽名工具集。我一般會(huì)先查清一件事electron-builder 的版本和 NSIS、winCodeSign 資源包是一一對(duì)應(yīng)死的升級(jí) electron-builder 可能導(dǎo)致緩存里多出多個(gè)不同版本的 nsis 和 winCodeSign新舊混用時(shí)會(huì)出一些非常奇怪的“玄學(xué)報(bào)錯(cuò)”。這個(gè)鎖定邏輯帶來的直接結(jié)果就是誰先裝誰后裝并不重要打包時(shí) electron-builder 會(huì)去遠(yuǎn)程倉庫拉一個(gè)“帶版本號(hào)前綴的壓縮包”解壓后放進(jìn)緩存目錄等待調(diào)用。如果你團(tuán)隊(duì)的構(gòu)建機(jī)上已經(jīng)有人跑過一次打包第二次打包根本不需要重新下載。但換一臺(tái)新電腦或者升級(jí)了 electron-builder 版本這部分下載時(shí)間就會(huì)原封不動(dòng)地還給你。為了不讓團(tuán)隊(duì)成員各自去等一次網(wǎng)絡(luò)下載我在團(tuán)隊(duì)內(nèi)部約定緩存目錄作為構(gòu)建產(chǎn)物的一部分進(jìn)行備份新機(jī)器先恢復(fù)緩存再打包。以下是 Windows 上 electron-builder 的默認(rèn)緩存路徑不同系統(tǒng)不一樣平臺(tái)緩存目錄Windows%LOCALAPPDATA%\electron-builder\CachemacOS~/Library/Caches/electron-builderLinux~/.cache/electron-builder緩存目錄里會(huì)按依賴名分文件夾electron 壓縮包放在 electron 目錄nsis 工具放在 nsis 目錄winCodeSign 放在 winCodeSign 目錄。你在打包日志里看到 “Downloading” 字樣就是在補(bǔ)齊緩存看到 “Packaging” 字樣說明依賴已經(jīng)齊了。判斷標(biāo)準(zhǔn)就這么簡單。2.2 三個(gè)包在打包中分別扮演什么角色Electron 本體壓縮包解決的是“運(yùn)行時(shí)”問題。它內(nèi)置了 Chromium 和 Node.js你的 JavaScript 代碼在打包后會(huì)被塞進(jìn)一個(gè) asar 歸檔由這個(gè)本體加載執(zhí)行。之所以單獨(dú)強(qiáng)調(diào) win32-x64是因?yàn)?electron-builder 對(duì)平臺(tái)架構(gòu)比較敏感——同一臺(tái)機(jī)器如果要同時(shí)出 32 位和 64 位安裝包會(huì)分別下載兩個(gè)不同架構(gòu)的 Electron 壓縮包體積直接翻倍。NSIS 3.0.4.2 是安裝程序引擎。electron-builder 沒有自己重新發(fā)明安裝包格式而是基于 NSIS 做了一個(gè)定制版它把應(yīng)用文件壓成一個(gè) 7z 歸檔再把 NSIS 的 stub 和這個(gè)歸檔拼起來生成你看到的 Setup.exe。整個(gè)安裝過程就是 NSIS 在解壓、寫注冊表、創(chuàng)建快捷方式、注冊卸載項(xiàng)。所以 NSIS 的版本直接影響安裝包的界面行為比如是否允許選安裝路徑、是否顯示安裝進(jìn)度條、是否需要管理員權(quán)限。winCodeSign-2.6.0 里面是一組可執(zhí)行工具最常見的是 signtool.exe 和 rcedit.exe。rcedit 負(fù)責(zé)改 exe 的圖標(biāo)、版本號(hào)、文件描述等資源段signtool 負(fù)責(zé)給 exe 打 Authenticode 簽名。你配置了 certificateFile 和證書密碼時(shí)winCodeSign 就會(huì)被調(diào)用沒配置證書時(shí)它也負(fù)責(zé)把默認(rèn)圖標(biāo)和版本信息寫進(jìn) exe。很多人以為代碼簽名是“證書的事”其實(shí)簽名動(dòng)作本身完全依賴這個(gè)工具包。2.3 加速依賴下載的兩種做法以及緩存目錄的離線用途網(wǎng)絡(luò)環(huán)境直接影響打包體驗(yàn)尤其是 Electron 壓縮包動(dòng)不動(dòng)就上百 MB。我常用的做法是設(shè)置鏡像源環(huán)境變量set ELECTRON_MIRRORhttps://npmmirror.com/mirrors/electron/ set ELECTRON_BUILDER_BINARIES_MIRRORhttps://npmmirror.com/mirrors/electron-builder-binaries/第一行讓 electron 本體從國內(nèi)鏡像下載第二行讓 nsis、winCodeSign 從 electron-builder-binaries 鏡像下載。兩個(gè)變量是獨(dú)立的只配其中一個(gè)的話另一個(gè)仍然走官方源所以建議同時(shí)設(shè)置。鏡像源的選擇不用太糾結(jié)只要確認(rèn)路徑能直接拼出“electron-v8.5.5-win32-x64.zip”和“nsis-3.0.4.2.7z”這樣的文件結(jié)構(gòu)就行。離線構(gòu)建則是另一個(gè)思路在能正常打包的機(jī)器上把 %LOCALAPPDATA%\electron-builder\Cache 整個(gè)目錄拷貝到新機(jī)器對(duì)應(yīng)位置再打包時(shí)會(huì)直接命中緩存日志里完全看不見 Downloading 字樣。我?guī)屯绿幚磉^多次“打包卡在下載”的問題最后幾乎都是歸還緩存放行的。注意一點(diǎn)緩存目錄的歸屬是當(dāng)前用戶級(jí)的如果 CI 或新機(jī)器用了不同賬號(hào)路徑要相應(yīng)調(diào)整。3. 最小打包配置跑通用 electron-builder 在 Windows 上產(chǎn)出第一個(gè) exe3.1 初始化工程并安裝核心依賴electron 版本怎么鎖先從一個(gè)干凈的目錄開始。這里假設(shè)項(xiàng)目名就叫 electron-pack-demoNode.js 版本不低于 14因?yàn)?electron-builder 對(duì)老版本 Node 支持有限。初始化并安裝依賴mkdir electron-pack-demo cd electron-pack-demo npm init -y npm install --save-dev electron8.5.5 electron-builder把 electron 固定在 8.5.5 是因?yàn)閳F(tuán)隊(duì)項(xiàng)目的運(yùn)行時(shí)版本要和緩存的 electron-v8.5.5-win32-x64 對(duì)齊。electron-builder 會(huì)自動(dòng)探測當(dāng)前項(xiàng)目里 electron 的版本然后拼出下載文件名所以如果你裝的是 electron 9.x緩存里就會(huì)出現(xiàn)另一個(gè)版本號(hào)的壓縮包。同一個(gè)項(xiàng)目里不要混用否則每次打包可能都在下載新東西。安裝完成后package.json 里至少要有 main 字段指向應(yīng)用的入口文件。最簡單的方式是新建一個(gè) main.jsconst { app, BrowserWindow } require(electron); app.whenReady().then(() { const win new BrowserWindow({ width: 1024, height: 768, webPreferences: { contextIsolation: true } }); win.loadFile(index.html); });這段代碼的邏輯是等 Electron 應(yīng)用就緒后創(chuàng)建一個(gè) 1024x768 的主窗口并加載本地 index.html。窗口參數(shù)里的 contextIsolation 保持默認(rèn)開啟避免后續(xù)升級(jí) Electron 時(shí)出現(xiàn)渲染進(jìn)程沙箱警告。index.html 里隨便寫一個(gè)標(biāo)題打包時(shí)它會(huì)被一起收進(jìn) asar。3.2 electron-builder 的配置項(xiàng)解析win、nsis、files 三段配置electron-builder 有兩種配置方式寫在 package.json 的 build 字段里或者單獨(dú)建 electron-builder.yml。我習(xí)慣用 package.json因?yàn)樯僖粋€(gè)文件而且讀取優(yōu)先級(jí)不容易搞混。下面是一個(gè)最小可用的配置文件{ name: electron-pack-demo, version: 1.0.0, description: electron packaging demo, main: main.js, scripts: { pack: electron-builder --win }, build: { appId: com.example.electronpackdemo, productName: ElectronPackDemo, files: [ main.js, index.html, package.json ], win: { target: [ { target: nsis, arch: [x64] } ], icon: build/icon.ico }, nsis: { oneClick: false, allowToChangeInstallationDirectory: true, createDesktopShortcut: true, shortcutName: ElectronPackDemo } } }配置分為三層files 決定哪些文件進(jìn) asarwin 決定目標(biāo)平臺(tái)和架構(gòu)nsis 決定安裝包行為。files 里只列入口文件和頁面資源node_modules 不需要手寫electron-builder 會(huì)自動(dòng)分析 main.js 里 require 的模塊并打包進(jìn)去。win 里把 target 精確到 nsinstal 和 x64出包結(jié)果就只會(huì)有 64 位的 NSIS 安裝包。icon 字段的路徑是相對(duì)項(xiàng)目根目錄的要求是 .ico 格式至少包含 256x256 尺寸。如果沒有準(zhǔn)備圖標(biāo)第一次跑通可以暫時(shí)刪掉這一行electron-builder 會(huì)用默認(rèn) Electron 圖標(biāo)但后續(xù)發(fā)布前必須換掉否則產(chǎn)品名旁邊永遠(yuǎn)是個(gè)外星人頭像。3.3 第一次打包與產(chǎn)物目錄驗(yàn)證在項(xiàng)目根目錄執(zhí)行打包命令npm run pack由于剛才配置了國內(nèi)鏡像源這一步不會(huì)等待太久但第一次仍會(huì)下載 nsis-3.0.4.2 和 winCodeSign-2.6.0。日志里依次出現(xiàn) “downloading”、“extracting” 和 “building” 三個(gè)階段。構(gòu)建完成后項(xiàng)目根目錄會(huì)出現(xiàn)一個(gè) dist 文件夾里面有兩個(gè)文件尾綴帶 “Setup” 的是安裝程序尾綴帶 “Blockmap” 的是增量更新映射文件。我建議拿到產(chǎn)物后先手動(dòng)安裝一遍而不是直接丟給測試。安裝過程中重點(diǎn)觀察剛才配置的 allowToChangeInstallationDirectory 是否生效——如果你看到安裝界面底部沒有“選擇目錄”按鈕說明 nsis 配置沒被正確讀取。常見原因是 package.json 里 build 字段寫在了 scripts 之前位置不影響解析但有些編輯器會(huì)把 JSON 格式校驗(yàn)標(biāo)紅導(dǎo)致你以為配置無效實(shí)際問題出在引號(hào)或逗號(hào)上。跑完第一次打包后去看緩存目錄如果 nsis 和 winCodeSign 文件夾已經(jīng)躺在那了說明全家桶下載完畢下次打包可以直接斷網(wǎng)測試。4. NSIS 安裝包定制卸載邏輯、安裝路徑與權(quán)限的坑4.1 nsis-3.0.4.2 在 electron-builder 里怎么被調(diào)用上一章我們完成了最小打包這一章開始定制 NSIS 安裝行為。先明確一件事NSIS 不是 electron-builder 寫的腳本語言而是一整套安裝程序制作框架。electron-builder 做的是把 NSIS 的 makensis 編譯器、預(yù)置安裝腳本模板和你配置的 nsis 參數(shù)拼在一起生成一個(gè)帶 UI 的 Setup.exe。你平時(shí)看到的“下一步”“安裝”“完成”按鈕全部來自 NSIS 的現(xiàn)代 UI 組件。nsis-3.0.4.2 這個(gè)版本號(hào)其實(shí)很少有人單獨(dú)下載它因?yàn)?electron-builder 會(huì)在打包時(shí)自動(dòng)去 electron-builder-binaries 鏡像拉取一個(gè)壓縮包解壓后臨時(shí)調(diào)用。它內(nèi)部包含兩個(gè)關(guān)鍵文件makensis.exe 是編譯器Stubs/ 目錄里是各種安裝程序外殼。你在配置里寫 oneClick、allowToChangeInstallationDirectory最后都會(huì)被翻譯成傳給 makensis 的指令參數(shù)。我在定制安裝包時(shí)堅(jiān)持一個(gè)原則優(yōu)先改 electron-builder 的 nsis 配置項(xiàng)不要輕易改 NSIS 腳本模板。因?yàn)?electron-builder 每次升級(jí)都可能更換模板文件你手改的腳本在下次升級(jí)后會(huì)失效或被覆蓋。除非是改安裝界面的啟動(dòng)畫面圖片或修改安裝完成后是否自動(dòng)運(yùn)行這種偏門需求否則配置項(xiàng)足夠用。4.2 定制安裝程序安裝路徑、桌面圖標(biāo)與卸載行為最常用的定制需求有三個(gè)安裝目錄可手選、桌面快捷方式開關(guān)、卸載時(shí)是否清除用戶數(shù)據(jù)。下面是一組我在實(shí)際項(xiàng)目里會(huì)用到的配置nsis: { oneClick: false, perMachine: false, allowElevation: true, allowToChangeInstallationDirectory: true, installerIcon: build/installer.ico, uninstallerIcon: build/uninstaller.ico, installerHeaderIcon: build/header.ico, createDesktopShortcut: true, createStartMenuShortcut: true, shortcutName: ElectronPackDemo, deleteAppDataOnUninstall: false, runAfterFinish: true }逐個(gè)說明oneClick 改為 false 會(huì)啟用“輔助安裝向?qū)А蹦J桨惭b器先展示歡迎頁和目錄選擇頁而不是一鍵裝完。perMachine 設(shè)為 false 表示按用戶級(jí)安裝不需要管理員權(quán)限裝到當(dāng)前用戶的 AppData 目錄如果設(shè)為 true安裝包會(huì)請求管理員權(quán)限并安裝到 Program Files。allowElevation 控制的是安裝器是否允許動(dòng)態(tài)請求 UAC 提權(quán)。perMachine 為 false 時(shí)這個(gè)選項(xiàng)一般跟著 false 走避免安裝器一半權(quán)限一半沒權(quán)限的割裂狀態(tài)。deleteAppDataOnUninstall 是很多人會(huì)忽略的坑如果設(shè)為 true用戶在卸載時(shí)會(huì)連本地?cái)?shù)據(jù)庫和登錄狀態(tài)一起刪掉對(duì)于工具類應(yīng)用我建議設(shè)為 false讓用戶數(shù)據(jù)保留至少在卸載時(shí)給一個(gè)提示選項(xiàng)。runAfterFinish 控制安裝完成后是否立即啟動(dòng)應(yīng)用這個(gè)看產(chǎn)品習(xí)慣不設(shè)默認(rèn)是 true。安裝路徑的選擇邏輯也值得注意當(dāng) perMachine 為 false 時(shí)electron-builder 會(huì)把默認(rèn)安裝路徑設(shè)置到當(dāng)前用戶的 AppData\Local\ProgramsproductName 目錄下。這種做法的好處是即使用戶不是管理員也能安裝壞處是某些安全類軟件會(huì)對(duì)用戶目錄下自啟動(dòng)的可執(zhí)行文件特別敏感。我自己做過對(duì)比同樣是未簽名安裝包裝到 Program Files 的觸發(fā)攔截概率比裝到用戶目錄低一些這是實(shí)測體會(huì)不一定算規(guī)則。4.3 安裝包體積優(yōu)化與安裝速度的權(quán)衡安裝包體積是逃不過的話題。electron-v8.5.5-win32-x64 壓縮包解壓后接近 200MBNSIS 引擎會(huì)把整個(gè)應(yīng)用目錄壓成一個(gè) 7z 歸檔。壓縮級(jí)別越高Setup.exe 越小但安裝時(shí)解壓越慢。electron-builder 提供了一組壓縮參數(shù)nsis: { compression: lzma, differentialPackage: true, unpackDirName: app-unpacked }compression 支持 zip、lzma、bzip2 三種。默認(rèn)是 lzma壓縮率最高但打包時(shí)間也最長。如果你的應(yīng)用里有很多二進(jìn)制資源比如原生模塊或 ffmpeg 庫zlib 會(huì)更穩(wěn)因?yàn)?lzma 在個(gè)別殺毒軟件的實(shí)時(shí)掃描下有可能被誤判。differentialPackage 設(shè)為 true 會(huì)生成一個(gè)體積很小的增量補(bǔ)丁包方便后續(xù)版本升級(jí)時(shí)只下載差異部分。除了壓縮算法體積優(yōu)化要靠排除文件。files 配置里有一個(gè)規(guī)律我覺得值得記住被 asar 收錄的文件越多安裝包越接近全量復(fù)制而 electron-builder 默認(rèn)會(huì)把 app-builder 依賴、測試腳本、.md 文檔都打進(jìn)去。我通常會(huì)在 files 里明確排除不必要的內(nèi)容files: [ main.js, index.html, package.json, !assets/screenshots/**, !test/**, !**/*.map ]map 文件對(duì)線上應(yīng)用沒有任何用處卻會(huì)讓體積多出幾十 MB這一條建議直接加。screenshots 這類靜態(tài)資源如果不被運(yùn)行時(shí)讀取也建議排除。每做一次排除操作對(duì)比一下 dist 目錄下 Setup.exe 的體積變化慢慢就能對(duì)“哪些文件值得進(jìn)安裝包”形成肌肉記憶。5. winCodeSign-2.6.0 代碼簽名避坑為什么簽完名還是被攔截5.1 簽名在打包流程里的位置與必要性winCodeSign 在整個(gè)打包流程里承擔(dān)兩件事改 exe 資源和打 Authenticode 簽名。它的位置在 NSIS 制作安裝包之前——electron-builder 先調(diào)用 rcedit 修改應(yīng)用的 exe 圖標(biāo)和版本信息接著調(diào)用 signtool 給 exe 簽名最后才把簽名后的 exe 傳給 NSIS 封裝成安裝程序。所以如果你在打包日志里看到 winCodeSign 目錄被讀取但隨后出現(xiàn) “skipped signing”說明簽名步驟被跳過了。簽名不是可有可無的東西。Windows 10 以上系統(tǒng)對(duì)來自網(wǎng)絡(luò)的可執(zhí)行文件有“Mark of the Web”檢測未簽名或簽名無法驗(yàn)證的 exe 會(huì)觸發(fā) SmartScreen 的藍(lán)色警告框上面寫著“Windows 已保護(hù)你的電腦”。真實(shí)的產(chǎn)品分發(fā)走這條路是必選項(xiàng)不是加分項(xiàng)。我有一次給內(nèi)部工具打包懶得配證書結(jié)果同事安裝時(shí) Windows Defender 直接提示風(fēng)險(xiǎn)最后還不是得回去補(bǔ)簽名配置重打。winCodeSign-2.6.0 里包含的工具可以獨(dú)立于 electron-builder 使用。遇到簽名問題需要排查時(shí)我會(huì)直接去看緩存目錄里的 winCodeSign 文件夾找到 signtool.exe 手動(dòng)執(zhí)行驗(yàn)證命令比反復(fù)打包試錯(cuò)快得多。5.2 自簽名證書練手但別指望它過 SmartScreen正式的代碼簽名證書需要去 CA 機(jī)構(gòu)購買一年花費(fèi)不小。在正式證書到手之前可以用自簽名證書先把簽名鏈路完整跑通。Windows 上生成自簽名證書用 PowerShell 一條命令New-SelfSignedCertificate -Type CodeSigningCert -Subject CNElectronPackDemo Test -CertStoreLocation Cert:\CurrentUser\My -NotAfter (Get-Date).AddYears(1)執(zhí)行后會(huì)生成一張有效期為 1 年的代碼簽名證書并自動(dòng)導(dǎo)入當(dāng)前用戶的證書庫。要把它導(dǎo)出成 electron-builder 能讀的 pfx 格式需要再用兩條命令$cert Get-ChildItem Cert:\CurrentUser\My | Where-Object { $_.Subject -like *ElectronPackDemo* } $password ConvertTo-SecureString your-password -AsPlainText -Force Export-PfxCertificate -Cert $cert -FilePath build/cert.pfx -Password $password然后在 build.win 配置里引用win: { certificateFile: build/cert.pfx, certificatePassword: your-password }自簽名證書能讓打包日志里出現(xiàn) “signed with sha256” 字樣安裝的時(shí)候也能看到發(fā)布者名字但用戶機(jī)器的證書信任鏈里沒有你的自簽名根證書SmartScreen 照樣彈警告。這條鏈路最大的價(jià)值在于驗(yàn)證 electron-builder 讀證書、算哈希、打簽名的流程沒毛病正式證書拿到手后替換 pfx 文件就行。5.3 三個(gè)坑證書找不到、時(shí)間戳失敗、雙簽名缺失坑 1打包日志顯示 “skipped signing”安裝包發(fā)布者為“未知”。現(xiàn)象打包流程正常結(jié)束產(chǎn)物也能跑但右鍵查看 exe 屬性數(shù)字簽名標(biāo)簽頁空白或顯示“該文件的數(shù)字簽名無效”。原因certificateFile 配置沒生效。最常見的是路徑寫錯(cuò)——electron-builder 解析相對(duì)路徑時(shí)基于項(xiàng)目根目錄如果你把 pfx 放在 build 目錄下卻寫成了 build/build/cert.pfx 就會(huì)找不到。還有個(gè)隱蔽情況electron-builder 讀取的是 win 塊下的 certificateFile不是根級(jí)配置。解決把證書路徑改成絕對(duì)路徑測試一遍確認(rèn)能讀到后再改回相對(duì)路徑。如果使用的是環(huán)境變量傳入證書密碼檢查 CI 或當(dāng)前 shell 里環(huán)境變量是否真的存在。坑 2簽了名但 SmartScreen 仍顯示“未知發(fā)布者”?,F(xiàn)象安裝包已經(jīng)帶簽名屬性里能看到發(fā)布者名字但彈窗還是全藍(lán)色警告。原因簽名有效不代表信任鏈建立。SmartScreen 看的是“證書是否來自受信任的根證書頒發(fā)機(jī)構(gòu)”以及“證書印章是否被足夠多的用戶接受過”。自簽名證書和剛買的 OV 證書都會(huì)遇到這個(gè)問題OV 證書的情況是部分用戶點(diǎn)擊“更多信息”可以繼續(xù)但信任建立需要時(shí)間。解決更換為 EV 代碼簽名證書它會(huì)把簽名印章做到本地可信根里SmartScreen 警告能直接消掉。如果暫時(shí)沒有 EV 證書OV 證書配合穩(wěn)定的時(shí)間戳服務(wù)器也能減少一部分?jǐn)r截但不要指望 100% 消除???3簽名時(shí)報(bào) “The timestamp service is not available” 或安裝包在無網(wǎng)環(huán)境安裝時(shí)簽名校驗(yàn)失敗。現(xiàn)象打包日志里出現(xiàn)時(shí)間戳服務(wù)器連接失敗或者安裝包在聯(lián)網(wǎng)環(huán)境正常、到客戶內(nèi)網(wǎng)就提示簽名損壞。原因electron-builder 簽名時(shí)會(huì)向時(shí)間戳服務(wù)器發(fā)請求把簽名時(shí)刻記錄到簽名數(shù)據(jù)里保證證書過期后簽名仍然有效。客戶內(nèi)網(wǎng)斷外網(wǎng)時(shí)Windows 無法驗(yàn)證時(shí)間戳。解決在 win 配置里顯式指定時(shí)間戳服務(wù)器win: { certificateFile: build/cert.pfx, certificatePassword: your-password, signtoolOptions: { signAndTimestamp: true } }或者更直接的做法是手動(dòng)重新簽名時(shí)加上/tr參數(shù)指定時(shí)間戳地址。實(shí)際上electron-builder 默認(rèn)會(huì)對(duì) exe 做時(shí)間戳但構(gòu)建機(jī)網(wǎng)絡(luò)不好時(shí)可能靜默跳過。我在一次離線構(gòu)建中發(fā)現(xiàn)簽名完整但時(shí)間戳缺失后來固定了時(shí)間戳服務(wù)器地址這類問題基本絕跡。以上三條是簽名環(huán)節(jié)最容易遇到的。記住一個(gè)原則簽名日志里的關(guān)鍵字是 evidence看到 “Signed” 和 “Timestamp” 兩個(gè)輸出同時(shí)出現(xiàn)才算真正完成缺一個(gè)都算翻車。6. 讓 Electron 打包成為可復(fù)用的流水線緩存復(fù)用與簽名自檢打包這件事一旦變得依賴網(wǎng)絡(luò)下載和本地緩存就天然不適合手工反復(fù)操作。我最后的習(xí)慣是給項(xiàng)目加一個(gè)驗(yàn)證腳本打包完成后自動(dòng)檢查安裝包的簽名狀態(tài)Get-AuthenticodeSignature -FilePath dist\ElectronPackDemo Setup 1.0.0.exe | Select-Object Status, StatusMessage, TimeStamperCertificate輸出里 Status 必須是 ValidTimeStamperCertificate 不能為空。如果 Status 是 UnknownError基本可以斷定是簽名或時(shí)間戳沒打上不用等測試反饋就能提前發(fā)現(xiàn)。把這個(gè)命令寫進(jìn) CI 流水線的后置步驟比默默發(fā)版再被用戶提醒要省心得多。另一個(gè)復(fù)用技巧是把緩存目錄納入備份策略。我在團(tuán)隊(duì)內(nèi)部約定新入職同事的機(jī)器先同步一次 %LOCALAPPDATA%\electron-builder\Cache之后打包的時(shí)間能穩(wěn)定控制在 3 分鐘左右而不需要反復(fù)等待幾十 MB 的下載。緩存一旦就位electron-v8.5.5-win32-x64、nsis-3.0.4.2、winCodeSign-2.6.0 三個(gè)包就是本地常駐資源打包變成了真正的離線流程。做 Electron 打包時(shí)間久了最大的教訓(xùn)是版本和證書這兩樣?xùn)|西不能靠“感覺”。版本鎖不準(zhǔn)緩存就開始膨脹慢則多下載幾個(gè)包快則升級(jí)后報(bào)一個(gè)看不懂的編譯錯(cuò)證書管理不嚴(yán)肅密碼寫進(jìn)配置里再推到共享倉庫等于把簽名鑰匙交給了所有人。我自己在這方面吃過虧——密碼從 package.json 挪到環(huán)境變量只花了我十分鐘卻把一個(gè)隱患徹底關(guān)掉了。個(gè)人開發(fā)時(shí)那種“怎么方便怎么來”的松弛感帶到打包流水線上關(guān)鍵時(shí)刻會(huì)咬人。希望這些經(jīng)驗(yàn)幫到你讓你在遇到這三個(gè)綠色文件夾時(shí)心里有底。本文還有配套的精品資源點(diǎn)擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
精品无码久久久久久久久| 婷婷五月大香蕉| 泰州成人视频| 天天弄天天爽| 综合久久久婷| 亚洲国产精品VA在线看黑人| 97热精品| 激情色视频| 女婷久久| 婷婷五月天AV在| 99热这里只有精品8| 99久久综合网| av五月丁香| 五月激情啪啪啪| 色婷婷欧美在线| 色婷婷狠狠禁久久| 麻豆AV一区二区三区| 中文av网站| 激情综合五月激情XXXX| 99九九在线观看免费| 噼里啪啦完整版中文在线观看| 欧美丁香五月夫妻天| 综合婷婷六月| 色色激情五月天| 男女激情久久| 91精品久久久久久综合五月天| 久久99热久久99精品| 99热大全在线观看| 91婷婷在线| 搡BBBB搡BBB搡18 | 屁股翘好撅高迎合跪趴| 无码色| 色婷婷社区| 黄色99视频| 97五月久久丁香婷婷| 少妇高潮呻吟A片免费看软件 | 久久多色| 国产婷婷久久| 婷婷五月激情视频网| 日韩无码专区| 中文资源在线a | 日91高清无玛| 亚州婷婷五月激情综合| 97丁香视频| 欧美69久成人做爰视频| 欧美搡BBBBB摔BBBBB| 五月色丁香| 99视频只有这里精品| 色综合久久综合中文综合网| 九九亚洲| 五月婷婷影| 五月丁香亭亭天天舔| 99欧美| 亚洲图色五月天| 免费观看全黄做爰的视频| 丁香五月久久| 丁香五月激情综合| 成人综合网站| 九九这里都是精品| 极品人妻VideOssS人妻| 开心五月激情网| 五月婷婷六月丁香在线| 天天爽天天| 色五月天丁香婷婷| 狠狠干夜夜干| 青草视频在线播放| 五月丁香婷婷激情图片| 中文字幕欧美久久| 五月丁香香蕉| 欧美日韩国产一区| 丁香综合日产精品久久| 久久精99| 久久婷婷五月综合激情国产| 色啪综合| 亚洲激情淫网| 丁香五月婷婷色综合| 成人综合网站| 大香蕉福利导航| 黃色三级三级三级三级 qixing300.shrkbk.com www.jinbozs.com tianmiaosw.com | 日韩av干| 色小说五月婷婷| 激情黄色小说五月天| 六月色色婷婷| 九九热只有精品| 激情99在线视频| 99热这里只有精品搜| 色婷婷五月天小说| 大香蕉九操| 99激情在线| 色婷婷888| av在线中文| 1024国产| 婷婷丁香18| 五月丁香婷婷欧美色图视频五月丁香777电影| 丰满少妇猛烈A片免费看观看| 少妇搡BBBB搡BBB搡毛茸茸| 中文字幕日产A片在线看| 91Chinese在线| 免费无码毛片一区二区A片| 国产伦亲子伦亲子视频观看| 色天堂在线| 在线播放中文字幕| 182.t午在线观看| 亚洲视频久久| 五月天婷a在线| 天天干,噜噜色,狠狠色| 人人草人人舔| 欧美成人一区二区三区在线视频| 九月大香蕉| 欧美性爱五月天| 热热久久精品视频| 日日夜夜狠狠操| www,色婷婷| 五月天色丁香| 99热一本久道| 亚洲久久婷婷丁香五月天| 丁香婷婷婷五月| 26UUU欧美激情一区二区| 婷婷五月色播| 亚洲xx网| 激情婷婷五月基地| 99啪啪视频| 人妻免费网站| 九九综合久久丁香婷婷,开心激情综合网| 激情五月综合色婷婷| 婷婷播5月| 97人人超| 成年视频免费观看| 五月色俺婷婷| 日本久久精品| 97精品综合久久内射| 六月婷婷综合| 天天插天天干| www.久久久久久久久久.com| 狠狠操天天操| 日韩成人AV在线| 五月桃花网综合| 五月色婷婷中文字幕| 婷婷丁香五月六月激情| 99热这里都是精品| 色婷婷av在线观看| 五月天婷婷基地| 五月婷婷激情网| 欧美色片中文字幕久久久久| 婷婷色五月婷婷姐妹| 热思思| 开心激情婷婷| 久久资源网五月婷| 99九九视频| 亚洲日日日| 色欧美日| 欧美婷婷精品激情| 欧美日韩国产成人在线| 国产精品久久久60086| 大香蕉久久久久| 超碰人人妻| 九九热只有这里是精品| 思思久久99| 丁香五月电影院在线观看| 激情另类综合| 五月天激情久久| 精品国婬伦V无码久久久| 色五月婷婷丁香国产在线| 伊人婷婷大香蕉| 婷婷五月丁香99| 久久6这里只有精品| 色欲久久久久久综合网综合网| 色婷婷中文| 激情五月天婷婷免费观看| 中文av网站| 九月色婷婷| 99在线观看视频| 七七九色| 久艹久| 激情五月婷婷伊人| 伊人五月婷| 欧美日韓成人亚洲精品另类| 六月婷婷狠狠做| 狠狠色婷婷| 色狠狠狠干| 久久久97| 99热乎| 婷婷伊人中文字幕| 96人人操人人操人人| 五月天精品视频| 激情图片婷婷| 丁香在线视频| 狠狠狠人妻| 国自产拍偷拍精品啪啪一区二区| 五月丁香婷婷婷婷综合网| 97碰久久| 五月情丁香色| 久操乱| 99er久久| 91精品婷婷国产综合| 丁香五月欧美| 国产人妻操逼| 伊人热在线大香蕉| 激情五月六月婷婷| 视频一二区| 色5月丁香婷婷| 丁香熟女乱| 激情综合五月开心狠狠| 久久综合五月天| 在线日韩视频| 五月丁香色五月| 亚州操人在线视频| 国产亚洲色婷婷久久99精品91 www.riverspirits.org www.hnnun.com www.changh | 五月丁香无码| 九热视频| 99re这里只有精品视频6| 亚洲无AV在线中文字幕| 久久人妻伦理| 91热爆在线| 人人摸人人| 激情综合4月| 另类天堂| 五月天黄色激情小说| 激情五月狠狠喔| 久久婷婷五月综合色和| 99啪| 色色色com| 女高怪谈在线观看| 在线视频色五月| 国产看真人毛片爱做A片| 色天天狠狠干| 五月丁香激情综合啪啪| 99热久久这里只有精品| 五月丁香婷婷六月| www.99热国产| 超碰在线观看成人视| 色播五月婷婷| 九色自拍| 爱iii做iiii日日| 五月天婷婷网站888| 欧美成人无码一区二区三区| 热婷婷在线视频| 五月丁香婷婷中文| 色五月激情婷婷| www.97干视频| 久久丁香婷| 99自拍视频网站| 色色色在线免费视频| 九九视频在线观看视频在线播放69| 综合五月丁香六月婷婷| 婷婷丁香基地在线| 91精品综合久久久久久五月丁香| 色婷婷基地 | 丁香久久五月天视频在线观看 | 综合网激情| 婷婷无码视频| 综合五月草| 婷婷激情综合色五月久久91| 日本天天操| 婷婷五月天在线一区| 99色婷婷视频| 丁香六月婷婷久久综合| 久久婷婷五月天激情唯美| 婷婷天堂视频| 懂色av粉嫩AV蜜臀AV| 激情五月综合| 97色天堂| 国产探花AV在线| 日韩 中文 欧美| 射婷婷中文字幕| 久久久ww| 色婷婷小说网| 岛国AV网站| 天天色·欧美| 色综合色五月| 五月丁香六月成人| 五月婷婷色白丝| 三男玩一女三A片| 97资源欧美日韩大香蕉超碰一区| 五月色综合网| 久久这里只有欧美| 特级片神马电影| 777色婷婷爱五月| 久久青青日本视频| 丁香九月综合在线| 7777久久亚洲中文字幕| 超碰色碰碰| 99成人在线观看| 日韩欧美四五区| 激情熟女网| www.激情在线| 99re最新地址视频| 玖玖伦理电影| 婷婷免费无视频| 成人羞羞啪啪 全 视频| 丁香操逼| 丁香社92视频| 超级碰碰视频无码| www.日韩国产| 国产中文亚洲欧美日韩性交| 99热欧| 天天爱天天做天天舔| 久久五月天大美女| 精品九九视频| 99色免费观看全部| 日韩精品一区二区亚洲AV观看 | 亚洲AV网址| 成人五月天丁香婷| 26uuu国产| 欧美日综合| 天天色情站| 变态 另类 在线 | 丁香六月综合| 婷色天堂| 操逼国产91| 大香蕉五月婷婷| 热九九精品| 亚州欧美国产久精国产99综合视频| 激情五婷精品网在线观看网址| 色婷婷五月天天天天天| 伍月婷丁香花全集| 91色涩| 91操碰| 色五月综合网| 丁香五月停停av| 开心五月婷婷综合在线精品素人| www超碰| 激情q青青草在线婷婷| 激情婷婷人妻| 久久婷婷六月综合综合色| 色色色婷婷| 久久97| 久久视频在线视频| 97热九九| 五月丁香在线国产 | 欧美婷婷丁香社区在线播放| 五月丁香色综合| 色色日韩网| 呦呦AV| www.婷婷五月| 九热视频| 九九综合网色全集 | 国产,欧美,日韩,性爱| 天天色视频| 九九色逼| 日笨久久网| 九久9精品| 婷婷五月天人妻| 激情综合五月| 色婷婷在线电影| 色伊人啪| 五月婷婷激情综合视频| 99re6久热只有精品6在线直播| 九色在线五月婷婷网址| AV九九| 婷婷激情五月天视频在线| 欧美啪啪9| 免费无码毛片一区二区A片| 日韩大片艹艹| 艾小青av| 99热伊人| 久久婷婷五月综合色奶水99啪| 91dy.av| 综合99视频| 亚洲精品久久久久久久久久飞鱼| 九九九九毛片| 婷婷狠狠操| 欧美三级A做爰在线观看| 蜜乳人妻一区二区三区| 五月天激情婷婷小说| 日韩性视频| 婷婷字幕在线| 激情五月天之六月婷婷| 夜夜撸夜夜骑| AV在线免费播放| 激情六月婷| www.超碰在线| 色色激情网| 中文字幕性爱丰满| 国产午夜成人免费看片无遮挡| 国产精品视频免费看| 婷婷之六月丁香| 天天日天天操心| 91九色国产熟女| 激情五月天色婷婷| 超碰国产在线播放| 丁香五月瑟瑟| 婷婷激情五月| 99久久黄色顶级视频| 碰碰女| 日韩天堂久久| 日日噜狠狠色| 丁香五月亚洲综合| 六月色国内综合| 99视频内射三四| 婷婷精品在线| 在线观看的av| 久久总和99| 狠狠色成人影片| 九月停停| 九九热只有精品| 亚洲成人在线在线| 五月天婷婷永久免费视频| 六月丁香啪啪| A一级操| 超碰99在线观看| 色五月婷婷自拍| 深爱开心激情| 久久九九九九| 六月婷婷视频| 久热一本| 玖玖婷婷五月天| 欧美黑人大吊| 五月婷婷激情网| 九九精品在线视频观看| 26uuu日韩| 五月丁香A片| 99操碰| 九九色99| 丁香五月天堂网| 9999热精品在线免费播放| 69精品人人人人| 丁香久久| 成人做爰高潮A片免费视频| 亚洲人人96@| 91丨九色丨东北熟女| 丁香狠狠| 夜色爱爱亚洲| 日日干日日| www.99热在线观看| 天天插天天插| 天天影视色综合网| 丁香六月激情综合网| 久久玖玖综合| 久久之人妻| 97色婷婷| 色在线视频网2025| www.99久| 亚洲情综合五月天| 伊人啪啪网| 99偷拍视频在线日本| 99男人的天堂| 婷婷五月天成人动漫| 久久人妻少妇嫩草AV| 淫荡工a| sewuyuetingtingiii| 亚洲va综合va国产va中文| www.婷婷五月天| 99ri视频| 久久91久久91色欲精品| 99色网站| 婷婷情色激情| 亚洲成人综合在线| 色婷婷综合久久| 五月天婷婷久久| 99re这里只有精品99| 亚洲精品久久久久久久久久吃药| 五月综合激情视频在线| 五月丁香六月婷婷综合在线| 99视频啪啪| 久99视频在线观看| 日本成人噜噜噜噜噜| 伊人9草在线观看| 色色色色色色色色网站| 99热这里只有精品18| 久久亚洲天堂| 国产精品久久久爽爽爽麻豆色哟哟| 五月婷婷六月丁香激情| 婷婷五月丁香六月伊人网| 97综合视频在线| 九色自拍| 五月丁香在线综合| 亚洲精品va| 九月色婷婷综合亚洲| 色五月天激情| 激情五月色综合| 中文字幕在线日亚州9| 久久se 综合网| 久久99激情| 99秘 在线| 五月天综合激情网| 五月丁香色色色| 狠狠色丁香| www.五月天激情| 人妻自慰在线| www.久久99热地址发布| 国产99久9在线+|+传媒| 国产欧美日韩综合精品一区二区| 色99自拍| 日日爱激情| 安息电影在线观看完整版| 第1影院之五月婷婷| 色色婷婷丁香| 91爱啪啪| www.日本91| 操逼123网| 婷香五月| 99久操| av在线免费播放观看| 亚洲精品亚洲人成人网| 天天射美女| 人人爱国产| 就爱干 在线| 99久久亚洲精品视频| 久久久婷婷色五月资源网| 天天揷综合网| 国产精品人成A片一区二区| 九九视频在线观看| 深爱激情五月天| 综合色色婷婷| 色婷婷五月天综合网| 99在线69| 久久婷狠狠色| 婷婷性福五月天| 97男人天堂| 国产性色蜜乳| 99ER热精品视频| 激情桃色网 | 色色综合院| 激情婷婷综合五月少妇| 五月天婷久久| 甈吧vv| 激情综合五月| 五月天伊人av| 五月天色色网站| 婷婷九月激情| 99在线精品观看99| 欧美精品999| 久久婷婷内射| 久久性操| 91操操| 99九九精品| 97碰在线| 色婷婷五月天av在线| 97碰啪啪| 色五月首页| 婷婷五月丁香五月| 图片区 小说区 区 亚洲五月| 丁香婷婷人妻| 久色网| 狠狠操之狠狠操| 国产成人+综合亚洲+天堂| 欧亚色色| 国产乱子轮XXX农村| 亚洲激情高潮| 五月天天丁香婷婷| 色五月丁香网| 亚洲婷婷久久综合| 开心五月婷婷激情| 亚州激情网| 成人片黄网站色大片免费毛片| 一區四區歐美日韓| 色婷婷五月天av在线| 5月丁香六月婷婷| 99ri精品在线观看| 久久综合五月天| 久久久jd| 激情五月天视频| 五月婷婷久久激情| 1024人妻无码中文字幕| 激情网婷婷五月天| 婷婷色导航| 五月丁香啪啪| 五月婷婷丁香综合网| 五月丁香婷婷啪啪网| www.色综合.com| 日本三级大片| 免费视频在线观看的网站| 婷婷丁香五月天中文字幕| yirenjiqingshiping| 五月天久久综合婷婷| 久久停停超碰| 免费视频在线观看的网站| AAA亚洲AV| 超碰色女| 九九99精品| 日日狠夜夜狠| 日本色99| 99精品偷自拍| 欧美日本另类| 久久色在线视频| 91re色综合视频| 天天日 天天草| 深爱五月月天| 色婷婷中文| 亚洲综合在线播放| 亚洲综合干| 久久精品噜噜噜成人A∨色欲| 无码啪啪| 思思精品久久艹| 日本99婷婷| 色色网站在线| 久久这里只有国产精品视频| 伊人网啪啪| 五月激情天| 婷婷王月天影院| 亚洲AV人人操| 激情AV综合| 激情五月综合网最新| 九九一综合精品| 婷婷九月狠狠色| 丁香六月啪啪| 久久婷婷五月综合啪| 色色成人網| 亚洲人成网站999久久久综合| 久久综合五月| 思思热精品在线| 五月欧美色播| 九九超碰人人| 国产精产国品一二三在观看| 色哟哟精品| 五月婷婷精品视频| 91九色在线| 91在线97视频| 天天操综合网| 六月丁香婷婷拍拍| 亚州综合色| 99热综合| 琪琪色五月天| 99性视频| 婷婷丁香高潮了| 中文资源在线a| 五月丁香综合色婷婷| 欧美在线视频99| 亚洲热久久| 亚洲 激情 中文| 婷婷综合影院| 婷婷丁香六月天激情四射网| 九九热精品在线| 亚洲网站999| 日本不卡五月婷婷丁香| 开心六月丁香五月婷婷| WWW色色色COm| 人人97操| 玖玖婷婷色欲| 开心五月深爱五月| 99热6精品| 欧美日韩成人在线网站| 五月花综合视频| 26UUU欧美激情一区二区| 五月婷婷黄色| 97极品在线| 激情丁香五月综合| 潘金莲AAAAAAAAAA| 婷婷丁香社区| 五月婷婷插一插| 色综合网上班开心婷婷久久| 超碰电影在线播放| 嫩草视频观看| 超碰色人妾| 亚洲欧美成人在线观看| 欧美情色一区| 日本不卡一区二区三区| 激情五月综合| 天天色视频| wwwwww.色| 五月天大香蕉| 9er热在线精品视频| 亚洲国产精品VA在线看黑人| 婷婷色网站| 久99热在线观看| 五月婷婷AV| 网站免费一站二站| 色婷久九| 欧美在线视频99| 狠狠搞五月天| 开心五月激情网| 日日鲁鲁夜夜爽爽| 欧美天堂婷婷日韩| WWW.婷婷| 棕合影院色色| 五月婷激情| 亚洲激情 久久| 国产精品久久欧美久久一区| 欧美va| 91碰免费视频| 中文AV网站| 久9无码视频| 国产无套精品一区二区| 99热这只有| 国产婷婷婷| 欧美va在线| 激情中文在线| 亭亭五月丁香五月天激情| 电影爱拉战争免费观看| 丁香五月亚洲综合丝袜| 播五月丁香三月婷婷| 丁香激情久久| av国产精品| 日韩精品二三区| 欧美25p| 另类综合激情| 91人人爽人人操| 色五月色五天色情网| 美妞av| 色婷婷精| 色啪综合| 精品人妻久久久久久久| 91丨九色丨熟女丰满| 9在线9在线婷婷在线国产| 婷婷五月中文字幕| 狠狠爱综合网| 天天爽人人爽| 在线可以看的av网址| 噜噜狠狠色综无码久久合欧美| 六月婷婷视频| 欧美婷婷综合| 琪琪布丁香社区激情五月天| 色婷九九九| 亚洲熟女色| 亚洲精99| 99av视频| 五夜婷婷| 激情内射人妻1区2区3区| 六月婷欧美丁香综合| 黄色一极大片| 色色是色N一| 裸体做A爰片毛片A片免费| 婷婷五月天久久久| www.婷婷网| 超碰97久久| 国自产拍偷拍精品啪啪一区二区| 九九婷婷网五月天| 激情婷婷五月天| 无码99| 久久久婷丁香五月| 激情婷婷丁香五月天| 色色色精品无码区| 久久婷婷综合五月天| 激情久久久| 激情性爱五月天网页| 激情九月天天天天婷婷| 人妻系列久久久久久久久久久 | 婷婷五月天成人网站| 丁香九月综合| 少妇人妻偷人精品无码视频新浪| 日本狠狠色| AA片在线观看视频在线播放| 婷婷五月色色| http://www.lingjunshare.com/| 婷婷五月在线观看| 色婷婷丁香五月| 五月婷婷国产| 精品视频99看在线视频| 激情欧美婷婷| 91人人爽久久涩噜噜噜| 丰满人妻一区二区三区| 婷婷久久在线| 婷婷深爱五月天在线| 播五月丁香三月婷婷| 婷婷五月花| 激情五月天影院| 婷婷五月花西瓜| 九九九午夜影院成人| 日本啪啪天堂| 91干在线| 五月婷婷综合影院| 91精品久久久久久77777| 啪啪啪大香蕉| 国产精品社区| 色永久| 婷婷99狠狠躁天天躁| CAoub青青超碰| 91啪级电影| 另类天堂| 九九综舍久久| 婷婷色丁香六月| 六月天婷婷| 五月丁香好婷婷A片网| 久99热| 搡BBBB搡BBB搡18| 国产日韩av片| 五月丁香六月婷婷亚洲综合| 五月天婷婷影院| 99日本黄站| 色色亚洲五月天| 日本V在线观看不卡视频网站| 久久九九99| 激情綜合網址| 日本三级片片| 久久婷婷婷婷伊人| 久久久久久久人妻| AV九九| WWW99热| 日韩美女在线视频19| www狠狠| 欧美精品XXXXBBBB| 开心五月六月婷婷| 殴美激情综合网| 99热99草97| 亚洲色婷婷视频| 1024国产| 婷丁香五月天| caopeng超碰| 天天舔夜夜操www com| 婷婷丁香六月五月天| 天天艹夜夜艹| 91jiuseshunv| 欧州色色| 丁香影院五月综合| 五月停停丁香| 狠狠噪| 久久在线人妻| 丁香六月婷婷色XXXX| 天天综合插插| 久久视频在线视频| 五月www| 激情五月激情综合网| 婷婷丁五月| 婷婷丁香十月| 日本色色网| 色婷婷狠狠| 97操在线视频| 婷婷综合| 这里都是精品99| 久久这里只有精品99| 狠狠干五月天婷婷网| 婷婷久久五月天| 99re6热在线精品视频播放速度| 精品婷婷| 激情综合啪啪啪| www.婷婷五月| 热99精品视频观看| 搡BBBB搡BBB搡五十| 五月激情婷婷色| 亚洲热热视频| 亚洲综合另类| 五月天激情婷婷| 五月天婷婷激情四射综合| 三级三久久线久久99久目本WW| 四色99久久| 91操在线观看| 玖玖爱资源站| 久热超碰| 日本三级中国三级99人妇网站| 99热国产国产| 一起草AV入口| 婷婷五月丁香网| 超级97碰碰| 婷婷五月色色| 99小视频在线| 婷婷六月天| 狠狠狠狠狠草| 月色色综合婷婷网| 777.色色| 韩国中文字幕91| 精品亚洲VA网站| 色色综合激情| 五月婷婷六月丁香| 欧美激情丁香五月天久久婷婷一区| 爱久久小说下载网| 天天狠天天叉| 婷婷五月丁香久久| 禁欲电影完整版在线播放| 天天日天天操天天干| 日韩啪图| 激情床戏| 婷婷五月天直播| 97碰 在线视频观看| 丁香五月AV| 久久精品熟女亚洲AV麻豆| 婷婷丁香视频| 亚洲激情区| www.minyis.com【JT】实力收量可预付QQ2101460746 | 91久久久久久| 最近免费中文字幕大全高清大全1| 99综合免费视频| 99热1| 777精品久无码人妻蜜桃| 5月丁香六月婷婷| 991精品在线视频| 激情丁香五月婷婷| 婷婷久久综合久色| 婷婷五月情| 久久小说| 少妇性按摩无码中文A片| 久久久久妻| 久久婷婷免费| 久久99久久99精品免视看婷| 五月色导航| 99色免费| 可以看的av| 色五月人妻| 综合激情啪啪| 婷久久综合| 天天操夜夜操| 婷婷色正月| 人妻久久做| 九九九九九九九九九九九九九国产精品| 色玖玖综合网| 九九热99精品| 激情六月丁香| 丝雨一区二区| 亚洲亚洲永久无码777777| 丁香五月电影| 狼人久草| 99精品视频在线6| 色色色综合| 六月丁香婷婷五月| 亚洲艹网| 五月丁香婷婷啪啪网| 色婷婷丁香A片区毛片区女人区| 99视频精品在线| 久久久久久天天日天天爱| 大香蕉啪啪啪啪啪啪| 色九九综合| 久久免费精彩视频| 五月丁香婷婷久久| 丁香五月区| 1级欧美日韩| www夜夜操| 色五月在线播放| 五月丁香网站在线播放| 日韩不卡DvD| 午夜激情久久| 少妇AB又爽又紧无码网站| 中文色婷婷| 五月婷婷亞洲中文| 91艹人| 久久久久亚洲AV成人无码电影| 91色五月在线观看| 色播综合| 久热欧美| 五月综合久久| 亚艹艹| 日日干日日s| 99自拍视频在线观看| 丁香五月婷婷婷桃花影院| 人妻熟人中文字幕一区二区 | 天天干天天干天天操| 日韩aaa| 97久久婷婷色| 无码操B| 91碰超| 99精品色| 丁香五月亚综合图片| 高清无码.com| 久久婷婷综合网| 在线99色| 日韩无码亚欧无码| 99人妻碰碰久久久禁片| 欧美精品999| 久久网日本| 色五月综合| 拳交大逼| 丁香色五月婷婷91桃色| 婷婷 激情 五月| 日韩色色小视频| 91精品婷婷国产综合久久| av操一操| 9 1大香蕉| 五月丁香六月停停停| 国产精品第一国产精品| 嫩草AV久久伊人妇女超级A | 日本不卡五月婷婷丁香| 激情欧美婷五月| 色五月综合婷婷久久综合婷婷久久综合婷婷久久综合婷婷久久 | 九月久久婷婷| 久久综合五月| 99综合成人视频在线观看| 五月婷婷很很色| 少妇搡BBBB搡BBB搡毛茸茸| 操操啪| 亚洲婷婷五月天| 99re热视频这里只精品5| 综合玖玖偷拍| 国产成人综合网| 五月天婷婷丁香社区| 精品久久9| cao视频,现在观看| 性生生活大片又黄又| 国产69久久久欧美黑人A片| 国产精品99久久久久久久女警| 五月丁香婷婷啪啪| 国产99久久久国产精品免费看| 久久久com| 精品一二三区久久AAA片| 欧美槡BBBB槡BBB少妇| 少妇熟女视频一区二区三区| 性做久久久久久久免费看| 做爰丰满少妇1313| 日本一级黄色片。| 天天射天天操天天干| 五月婷婷久久爱| 9 1大香蕉| 超碰爱爱爱| 婷婷久久五月天丁香| 欧美三级欧美一级| 99人人干| 久久婷婷激情五月天一区二区| 五月婷五月婷伊人伊人五月婷| 婷婷五月综合婷婷| www.爱操com.| 99视频精品全部免费观看| 婷婷五月图片小说视频| 99热这里只有精品2| 99热这| 六月婷婷色色色| 精品激情| 伊人婷婷五月天| 1024操逼| 婷婷97C| 99热精品10| 啪啪啪综合网| 丁香五月天信号| 婷婷六月久久| 五月天婷婷爱| 丁香五月婷婷六月婷| 一区三区视频有限公司| 男人先锋久久| 开心五月婷婷激情| 久久婷婷网| 亚洲黄色操逼| 五月做爱| 九色91美女| 天堂爱爱| 这里只有精品视频在线看| 亚洲激情综合| 播播网色播播| 婷婷五月丁香激情| 超级碰碰碰碰视频| 天天做天天爱天天爽夜夜揉| 思思久久96热在精品国产,| 亚洲色色香蕉| 超碰亚洲天堂| yazhoujiqingav| 日韩无码人妻一区二区| 香蕉综合网| 五月精品免费XXX| 久草a片| 久久综合99| 九九成年视频| 99色在线| 97韩国久久电影院| 日韩AV片| caop视频| 1024婷婷综合久久五月天| 色五月婷婷成人视频| 99热在线只有精品| 丁香五月天激情视频| 久久五月婷综合| 玖玖爱综合网| 噜噜噜色噜噜| 亚洲性爱电影| 久久99热网| 99精品久久久久久久| 色情丁香五月天| 天天在线XXX| 激情五月婷婷| 婷婷影院欧美| 丁香五月色综合色播五月| 很很干夜夜干| 色婷婷电影网| 新激情婷婷| 任你草| 欧美搡BBBBB摔BBBBB| 熟妇无码乱子成人精品| 国产欧美日韩综合精品一区二区| 能看的av| 亚洲精品视频在线| 色色六月| 婷婷五月激情热播| 久久丁香综合| 97夫妻超碰| 成人AV在线网站| 99er精品视频| 激情婷婷五月天| 97色天堂| 99色免费视频| 五月天大香蕉| 婷婷六月视频| 五月天婷婷永久免费视频| 91丨九色丨东北熟女| 精品操逼一区二区| 日韩狠狠色婷婷| 激情av在线| 五月丁香六月综合图| 日日操夜夜爽白洁| 伊人久久大香线蕉av一区| 久热99视频在线观看| 色狠狠狠干| 六月婷婷色色色| 国产精品成人网址| 狠狠狠狠免费| 91热99| 激情久久综合网| 人人爽欧美婷婷久久久五月丁香| 激情婷婷五月天伊人在线观看| 婷婷九月激情| 色色五月激情| 婷婷五月六月丁香综合| 亚洲综合另类| 婷婷91| 久久精品性爱| 五月久久丁香| 婷婷区日本| 无码操B| 婷婷爱爱蜜臀天天操| 亚洲va在线∨a天堂va欧美va| 黑人巨粗进入警花疼哭A片| 五月婷婷免费在线| 伊人久久大香蕉网| 九月av在线| 日韩操| 色五月婷婷五月天激情综合| 色三级色三级| 成人无码髙潮喷水A片| 色色色五月| 激情久久久| 五月婷庭丁香在线| 婷婷久久丁香五月| 婷婷六月综合基地| av中文网站| 亚洲操女| 天天添天天摸天天天天做| 婷婷六月色| 天天爽夜夜爽夜夜爽精品| 五月婷精品| 久久久久8888| 五月婷婷六月丁香| 激情五月婷黄版| 99热这里只有精品86| 中文字幕丰满乱孑伦无码专区| 成人AV在线网站| 777精品久无码人妻蜜桃| 五月色婷婷亚洲 | 91精品久久久久久综合五月天| 久久婷婷五月天激情四射| 久九九热| 国产这里只有精品| 人人干人人操外国| 中文AV网| www.99免费视频| www.minyis.com【JT】实力收量可预付QQ2101460746 | 亚洲V国产V欧美V久久久久久| 九九热这里精品| 丁香五月综合| 色综合色综合色综合高潮| 国产一区二区三区影院| 亚洲激情高潮| 美国少妇性做爰| 久久九九99亚洲国产久精综合| 中国女人做爰A片| 婷婷开心激情综合五月天| 五月婷婷很很色| 欧美激情综合色丁香婷婷五月天| 色婷小说| 婷婷性爱五月天| 色五月婷婷影视| 日本狠狠色| 五月丁香婷婷六月| 亚洲av无码精品色午夜| 亚洲99在线视频| 在线99热| 变态另类9| 婷婷亚洲五月| 五月天久久小说| 色色色色色色综合| 欧美人人草草| 久久人妻视频| 98国产精品综合一区二区三区| 最新五月天婷婷影| 七七色综合| 可以免费观看的av| 天天摸天天肏| 婷婷精品| 99热这里有精品2| 日本三级色| 婷婷五月香蕉| 日日天天天| 丁香五月婷婷av影院| 色在线视频网2025| 欧美精品啪啪| 九九黄色网| 婷婷五月天天aV| 久久网婷婷| www.99久久久| 丁香五月天激情五月天激情五月天激情网 | 涩五月婷婷| 夜夜天天久久婷婷| www.韩日视频| 丁香五月婷婷激情尤物| 精品51XX| 婷婷综合色色| 精品无码色| 伊人网色婷婷五月天| 欧美VA在线| 色丁香婷婷| 国自产拍偷拍精品啪啪一区二区| 国产AV一区二区三区最新精品| 丁香五月天色| 婷婷色五月激情| 99激情网| 丁香成人五月天| 丁香五月,开心五月,成人婷婷| 久久精典| 99色激| 性爱激情五月| 庭庭久久内射| 激情小说五月天中文字幕| 91热久| www.色婷婷| www.久久av.com| 超碰免费人妻| 激情图片亚洲| 综合视频久久| 99色热视频| 久青操| 日本三级成人秘书精品片| 91无码高清| 五月婷无码| 婷五月天丁香婷五月| 天天做天天爱天天高潮| www.丁香五月| 婷婷五月天成人在线视频| 色婷婷在线视频观看| 久久久网站| 婷婷色爱| 丁香五月婷婷久久综合激情网| 五月丁香 狠狠爱| 99色性爰网络| 色色网站免费| 激情婷婷五月亚洲| 亚洲精品网址| 国产69久久久欧美黑人A片| 婷婷天天婷婷天天澡| 日韩砖区| 超碰三级片| 婷色影院| 丁香色婷婷五月天| 终合激情网| 66久久视频在线| 六月久久婷婷| 日日操天堂| 婷婷五月天成人| 六月色婷婷| 亚洲精品另类| 欧美激情五月天| 日本一毛片| 激情婷婷网| 成人婷婷桔色| 玖玖婷婷五月| 国产精品成人网址| 久草五月| 97色永久免费视频| 婷婷五月天堂一本在线| 开心丁五月| 五月天久久www| 久9综合| 婷婷五月成人| 九九综合九九| XX色综合| 色色亚卅| 丁香六月婷月91婷月| 丁香婷婷色九月| 91高潮喷水久久久久久久久| 五月天婷婷色色网| 四色永久成人网站| 久久久婷婷五月天| 琪琪色五月天| 99热在线中文字幕| 91精产一区三区免费观看| 色色色综合网| 激情六月日韩| 色情五月天视频网| 激情九月丁香婷婷| 国产99久久久国产精品免费看| 丝袜大香蕉| 久久92| 婷婷五月天综合网| 色色色免费视频|