成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

electron打包可選擇安裝位置,可自動(dòng)更新

canger / 2652人閱讀

摘要:事件當(dāng)發(fā)現(xiàn)一個(gè)可用更新的時(shí)候觸發(fā),更新包下載會(huì)自動(dòng)開(kāi)始。在上只有是有效的。方法列表對(duì)象有以下的方法設(shè)置檢查更新的,并且初始化自動(dòng)更新。這個(gè)一旦設(shè)置就無(wú)法更改。向服務(wù)端查詢現(xiàn)在是否有可用的更新。在下載完成后,重啟當(dāng)前的應(yīng)用并且安裝更新。

Electron打包調(diào)參軟件(windows版)

----------------------------------可選安裝位置,可自動(dòng)更新,手動(dòng)更新

一:引包:electron,electron-builder,electron-updater**
npm i electron --save-dev
npm i electron-builder --save-dev
npm i electron-updater --save
注:每個(gè)包都要放在相應(yīng)的位置;

Package.json配置:

1.字段:”build”

參數(shù):

{
    "publish": [
        {
            "provider": "generic",
            "url": "http://localhost:8899/"   //存放軟件版本的地址
        }
    ],
    "directories": {
        "output": "release",      //打包后文件所在位置
        "app": "./"    //開(kāi)始位置
    },
    "win": {    //windows下安裝軟件配置參數(shù)
        "target": [
            "nsis",  //打包為nsis安裝文件
            "zip"   //打包為安裝文件zip
        ]
    },
    "nsis": {   //nsis配置參數(shù)
        "oneClick": false,    //可單擊打開(kāi)
        "allowToChangeInstallationDirectory": true,    //允許用戶選擇安裝位置
        "perMachine": true
    }
};
2.字段:”script”

參數(shù):

{
    "dist": "electron-builder"
}
3.字段:”version”

參數(shù):

1.0.0   //保存版本信息,通過(guò)該字段完成更新功能(必須字段)

二:打包:npm run dist

等待打包,打包完成之后生成的文件會(huì)放在output字段設(shè)置的位置;

這是打包完成后生成的文件,其中l(wèi)atest.yml是electron-builder自動(dòng)生成的版本管理文件, 該文件保存有版本信息;

箭頭指向的文件為可安裝軟件,即打包后的目標(biāo)文件;

版本文件:

可以看到,現(xiàn)在打包的版本為2.0.0,想要改變版本只要更改package.json的version字段,重新打包即可;

點(diǎn)擊該文件可進(jìn)行安裝:

三:更新 確認(rèn)已經(jīng)安裝了electron-updater 1.需要在electron主進(jìn)程中引入electron-updater;

const autoUpdater = require("electron-updater").autoUpdater; //引入 autoUpdater

2.以下代碼需要在完成創(chuàng)建BrowserWindow后執(zhí)行;

autoUpdater.setFeedURL("http://localhost:8899/"); //設(shè)置檢測(cè)更新地址(參數(shù)為 軟件所在位置)

3.autoUpdater.checkForUpdates() //檢測(cè)是否有新版本,如果有新版本則自動(dòng)下載; 4.autoUpdater.on("update-downloaded", function () { //下載完成后執(zhí)行 quitAndInstall
autoUpdater.quitAndInstall();  //關(guān)閉軟件并安裝新版本

});

5.安裝程序后,每次打開(kāi)都會(huì)執(zhí)行上述代碼,每次都會(huì)檢測(cè)是否有新版本; 6.最后一步,打包一個(gè)新版本的軟件,把exe文件和latest.yml一起放在autoUpdater.setFeedURL()設(shè)置的路徑下;

打開(kāi)軟件后檢測(cè)到有新版本時(shí)就會(huì)自動(dòng)下載安裝:

以上為軟件自動(dòng)更新,若要軟件手動(dòng)更新還需要electron主進(jìn)程和渲染進(jìn)程之間的通訊,通過(guò)用戶操作觸發(fā)更新檢測(cè),下載更新事件;

以下是autoUpdater手動(dòng)更新時(shí)可能用到的方法和事件; 事件列表
autoUpdater?對(duì)象會(huì)觸發(fā)以下的事件:
    事件:"error"
        返回:
        error?Error
        當(dāng)更新發(fā)生錯(cuò)誤的時(shí)候觸發(fā)。
    事件:"checking-for-update"
        當(dāng)開(kāi)始檢查更新的時(shí)候觸發(fā)。
    事件:"update-available"
        當(dāng)發(fā)現(xiàn)一個(gè)可用更新的時(shí)候觸發(fā),更新包下載會(huì)自動(dòng)開(kāi)始。
    事件:"update-not-available"
        當(dāng)沒(méi)有可用更新的時(shí)候觸發(fā)。
    事件:"update-downloaded"
        返回:
            event?Event
            releaseNotes?String - 新版本更新公告
            releaseName?String - 新的版本號(hào)
            releaseDate?Date - 新版本發(fā)布的日期
            updateURL?String - 更新地址
        在更新下載完成的時(shí)候觸發(fā)。
        在 Windows 上只有?releaseName?是有效的。
方法列表
    autoUpdater?對(duì)象有以下的方法:
        autoUpdater.setFeedURL(url)
            url?String
            設(shè)置檢查更新的?url,并且初始化自動(dòng)更新。這個(gè)?url?一旦設(shè)置就無(wú)法更改。
    autoUpdater.checkForUpdates()
        向服務(wù)端查詢現(xiàn)在是否有可用的更新。在調(diào)用這個(gè)方法之前,必須要先調(diào)用?setFeedURL。
    autoUpdater.quitAndInstall()
        在下載完成后,重啟當(dāng)前的應(yīng)用并且安裝更新。這個(gè)方法應(yīng)該僅在?update-downloaded?事件觸發(fā)后被調(diào)用。

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/95236.html

相關(guān)文章

  • 如何搭建Electron開(kāi)發(fā)環(huán)境

    摘要:原文發(fā)表于如何搭建開(kāi)發(fā)環(huán)境這個(gè)項(xiàng)目結(jié)構(gòu)是我在編寫(xiě)基于和的七牛文件上傳總結(jié)出來(lái)的本文主要介紹如何從零開(kāi)始搭建高效的開(kāi)發(fā)環(huán)境主要內(nèi)容如下通過(guò)合理的目錄劃分來(lái)組織代碼使用簡(jiǎn)化開(kāi)發(fā)如何在渲染進(jìn)程開(kāi)發(fā)時(shí)使用熱更新如何在主進(jìn)程開(kāi)發(fā)時(shí)使用自動(dòng)重啟如何在主 原文發(fā)表于 https://lleohao.github.io/2017/09/02/如何搭建Electron開(kāi)發(fā)環(huán)境/ 這個(gè)項(xiàng)目結(jié)構(gòu)是我在編寫(xiě)...

    TwIStOy 評(píng)論0 收藏0
  • Electron 打造 Win/Mac 應(yīng)用,從「代碼」到下載的「安裝包」,能比你想得麻煩一

    摘要:三配置環(huán)節(jié)目的一是為之后的環(huán)節(jié)初始化工作流參數(shù),二是準(zhǔn)備好應(yīng)用文件夾內(nèi)容即要打包的目標(biāo)文件夾做的事解析命令行參數(shù),初始化工作參數(shù),填充配置文件,把配置文件和相關(guān)依賴文件導(dǎo)入到文件夾內(nèi)合適的 首發(fā)于酷家樂(lè)前端博客,作者@摘星(segmentfault @StinsonZhao) 我們能從很多地方學(xué)習(xí)到怎么起一個(gè) Electron 項(xiàng)目,有些還會(huì)介紹怎么打包或構(gòu)建你的代碼,但距離「真正地...

    LdhAndroid 評(píng)論0 收藏0
  • XCel 項(xiàng)目總結(jié) - Electron 與 Vue 的性能優(yōu)化

    摘要:而這里的單元格信息是唯一的,所以直接通過(guò)為一個(gè)空對(duì)象賦值即可。和相關(guān)的知識(shí)和技巧高亮的列單元格采用展示。在中,被選中的單元格會(huì)高亮相應(yīng)的行和列,以提醒用戶。 showImg(https://segmentfault.com/img/bVGkdk?w=900&h=500); XCEL 是一個(gè) Excel 數(shù)據(jù)清洗工具,其通過(guò)可視化的方式讓用戶輕松地對(duì) Excel 數(shù)據(jù)進(jìn)行篩選。 XCEL...

    XUI 評(píng)論0 收藏0
  • electron打包electron-packager及electron-builder兩種方式實(shí)

    摘要:前言本文主要介紹如何通過(guò)及兩種方式,將已有的應(yīng)用打包成格式和可執(zhí)行文件。導(dǎo)致了在打包的過(guò)程中非常慢。由于是初次接觸,如讀者在文中發(fā)現(xiàn)錯(cuò)誤,請(qǐng)及時(shí)指正。 前言 showImg(https://segmentfault.com/img/bV6zNn?w=1319&h=594); 本文主要介紹如何通過(guò)electron-packager及electron-builder兩種方式,將已有的ele...

    KaltZK 評(píng)論0 收藏0
  • Electron 打包Mac安裝包代碼簽名問(wèn)題解決方案

    摘要:最近一直在做應(yīng)用的打包,集成版本的自動(dòng)更新時(shí)出現(xiàn)了問(wèn)題。針對(duì)上述上打包無(wú)法進(jìn)行正確代碼簽名的問(wèn)題,通過(guò)設(shè)置環(huán)境變量和使用進(jìn)行代碼簽名可以解決。 最近一直在做electron應(yīng)用的打包,集成mac版本的自動(dòng)更新時(shí)出現(xiàn)了問(wèn)題。具體打包流程請(qǐng)參考:Electron 桌面應(yīng)用打包(npm run build)簡(jiǎn)述(windows + mac)Electron應(yīng)用集成自動(dòng)更新功能可參考:Elec...

    taoszu 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<