又接觸了一個新的升級插件,和AutoUpdater.NET基本相似。生成包來說Inno Setup很方便,比Wix ToolSet容易配置多了。
1.打包軟件Inno
Inno Setup入門實例教程 Inno Setup打包工具新手教程(圖文)
https://www.jb51.net/softjc/460940.html
2.自動升級插件NetSparkleUpdater
https://github.com/NetSparkleUpdater/NetSparkle
3.比較簡單,上傳個實例好了。
升級包地址以本機測試為了,UpDate放在D盤根目錄下.
沒什么好講的,一言不合就上代碼(Demo):
鏈接:https://pan.baidu.com/s/11d1jaV5hbXNO-znMz8DYdQ
提取碼:pvry
最后看下升級代碼:
SparkleUpdater sparkle = new SparkleUpdater(@"D:\Update\Sample Appcast.xml", new Ed25519Checker(NetSparkleUpdater.Enums.SecurityMode.Unsafe, "base_64_public_key")) { UIFactory = new NetSparkleUpdater.UI.WPF.UIFactory() { HideReleaseNotes = false, HideSkipButton = true, } }; var sparkleInfo = await sparkle.CheckForUpdatesQuietly(); switch (sparkleInfo.Status) { case NetSparkleUpdater.Enums.UpdateStatus.UpdateAvailable: await sparkle.CheckForUpdatesAtUserRequest(); break; case NetSparkleUpdater.Enums.UpdateStatus.UpdateNotAvailable: break; case NetSparkleUpdater.Enums.UpdateStatus.UserSkipped: break; case NetSparkleUpdater.Enums.UpdateStatus.CouldNotDetermine: break; default: break; }
另外在我的框架里也集成了這種升級方法:
有個缺點,升級程序啟動后,登錄界面也會顯示,大家有什么好的思路碼?AutoUpdater.NET是同步方法,所以沒有問題。
我新放上去的文件
好了,至此結束。
源碼地址:艾竹/AIStudio.Wpf.AClient (gitee.com)