<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
人真的是會變得越來越懶的,也正是人的惰性吧,真的是很諷刺。
關於這個應用程式的開發,斷更了很久,但是程式碼部分還算沒落下吧,終於在週一、週二終把這個應用程式寫完了。
開發完不是終點。而是打包後可以使用才真的算是結束吧。
完整範例如下:
json
"build": { "productName":"xxxx",//專案名 這也是生成的exe檔案的字首名 "appId": "com.leon.xxxxx",//包名 "copyright":"xxxx",//版權 資訊 "directories": { // 輸出資料夾 "output": "build" }, "nsis": { "oneClick": false, // 是否一鍵安裝 "allowElevation": true, // 允許請求提升。 如果為false,則使用者必須使用提升的許可權重新啟動安裝程式。 "allowToChangeInstallationDirectory": true, // 允許修改安裝目錄 "installerIcon": "./build/icons/aaa.ico",// 安裝圖示 "uninstallerIcon": "./build/icons/bbb.ico",//解除安裝圖示 "installerHeaderIcon": "./build/icons/aaa.ico", // 安裝時頭部圖示 "createDesktopShortcut": true, // 建立桌面圖示 "createStartMenuShortcut": true,// 建立開始選單圖示 "shortcutName": "xxxx", // 圖示名稱 "include": "build/script/installer.nsh", // 包含的自定義nsis指令碼 }, "publish": [ { "provider": "generic", // 伺服器提供商 也可以是GitHub等等 "url": "http://xxxxx/" // 伺服器地址 } ], "files": [ "dist/electron/**/*" ], "dmg": { "contents": [ { "x": 410, "y": 150, "type": "link", "path": "/Applications" }, { "x": 130, "y": 150, "type": "file" } ] }, "mac": { "icon": "build/icons/icon.icns" }, "win": { "icon": "build/icons/aims.ico", "target": [ { "target": "nsis", "arch": [ "ia32" ] } ] }, "linux": { "icon": "build/icons" } }
使用如下命令安裝:
highlighter-
npm install electron-packager --save-dev
安裝好之後會在package.json
中的devDependencies
生成程式碼:
highlighter- Bash
"devDependencies": { "electron-packager": "^9.1.0" }
為在package.json
中新增如下程式碼:
highlighter- Bash
"scripts": { "dist": "electron-builder --win --x64", "package": "electron-packager ./ --overwrite -all" }
命令列中執行npm run package
進行打包如下所示:
打包成功後,會在根目錄下(此處的目錄是可在引數中設定的)下生成.exe,執行該檔案,並且沒有報錯,則說明本次打包成功
特點:
1、支援平臺有:Windows (32/64 bit)、OS X (also known as macOS)、Linux (x86/x86_64);
2、進行應用更新時,使用electron內建的autoUpdate
進行更新
3、支援CLI和JS API兩種使用方式;
electron-builder比electron-packager有更豐富的的功能,支援更多的平臺,同時也支援了自動更新。
除了這幾點之外,由electron-builder打出的包更為輕量,並且可以打包出不暴露原始碼的setup安裝程式。考慮到以上幾點,我果斷選擇了electron-builder。
安裝依賴:
npm
yarn add electron-builder --save-dev
在package.json
中做如下設定
highlighter- Bash
"build": { "appId": "simpleMusicPlayer", "mac": { "category": "public.app-category.productivity" }, "dmg": { "background": "build/appdmg.png", "icon": "build/icon.icns", "iconSize": 100, "contents": [ { "x": 380, "y": 280, "type": "link", "path": "/Applications" }, { "x": 110, "y": 280, "type": "file" } ], "window": { "width": 500, "height": 500 } }, "linux": { "target": [ "AppImage", "deb" ] }, "win": { "target": ["nsis","zip"], "icon": "build/icon.ico" } }
scripts
新增
highlighter- Bash
"scripts": { "dist": "electron-builder --win --x64" },
使用npm run dist
打包
打包後在dist
目錄生成如下檔案:
解壓zip包或執行setup安裝檔案,應用啟動後且沒有報錯,則說明本次打包成功。
特點:
1、electron-builder
可以打包成msi、exe、dmg
檔案,macOS
系統,只能打包dmg
檔案,window
系統才能打包exe,msi
檔案;
2、幾乎支援了所有平臺的所有格式;
3、支援Auto Update
;
4、支援CLI
和JS API
兩種使用方式;
整個過程看似很簡單,可能也就只有自己知道有多難吧。
萬事開頭難,在開發環境的搭建及應用程式的打包方面花費的時間是最多,目前網上的博主真的好多,但是靠譜的真的很少,大部分都是複製別人的,真的很坑。
整個過程下來,中間個人原因扔下很久,但是個人覺得還是很值得學習的。
值得說是,如果前端不好的同學滲入(比如我),但是學完,真的是會讓你自己前端開發水平,會有很大的提升,整個案例使用很多知識點,真的是受益匪淺。
目前自己可以建立一個簡單的electron應用,並且可以使用electron在主程序、渲染程序間實現通訊,算是入門了吧,確實挺好玩的,以後有時間可以再滲入研究下。
最後我們來看下效果吧......
以上就是Electron學習應用程式打包範例詳解的詳細內容,更多關於Electron應用程式打包 的資料請關注it145.com其它相關文章!
相關文章
<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
综合看Anker超能充系列的性价比很高,并且与不仅和iPhone12/苹果<em>Mac</em>Book很配,而且适合多设备充电需求的日常使用或差旅场景,不管是安卓还是Switch同样也能用得上它,希望这次分享能给准备购入充电器的小伙伴们有所
2021-06-01 09:31:42
除了L4WUDU与吴亦凡已经多次共事,成为了明面上的厂牌成员,吴亦凡还曾带领20XXCLUB全队参加2020年的一场音乐节,这也是20XXCLUB首次全员合照,王嗣尧Turbo、陈彦希Regi、<em>Mac</em> Ova Seas、林渝植等人全部出场。然而让
2021-06-01 09:31:34
目前应用IPFS的机构:1 谷歌<em>浏览器</em>支持IPFS分布式协议 2 万维网 (历史档案博物馆)数据库 3 火狐<em>浏览器</em>支持 IPFS分布式协议 4 EOS 等数字货币数据存储 5 美国国会图书馆,历史资料永久保存在 IPFS 6 加
2021-06-01 09:31:24
开拓者的车机是兼容苹果和<em>安卓</em>,虽然我不怎么用,但确实兼顾了我家人的很多需求:副驾的门板还配有解锁开关,有的时候老婆开车,下车的时候偶尔会忘记解锁,我在副驾驶可以自己开门:第二排设计很好,不仅配置了一个很大的
2021-06-01 09:30:48
不仅是<em>安卓</em>手机,苹果手机的降价力度也是前所未有了,iPhone12也“跳水价”了,发布价是6799元,如今已经跌至5308元,降价幅度超过1400元,最新定价确认了。iPhone12是苹果首款5G手机,同时也是全球首款5nm芯片的智能机,它
2021-06-01 09:30:45