背景:
前些年随着技术的发展逐渐兴起“一次编码到处运行”、“国产化”的概念那么跨平台就是各大技术争相主推的能力之一。具备跨平台的能力同时也需要自动升级的能力,GeneralUpdate 随之应运而生。
 介绍:
 1. GeneralUpdate 是什么?
GeneralUpdate 是一款基于.NET Standard2.0 MIT 协议开源的跨平台应用程序自动升级组件。
 2. GeneralUpdate 提供什么?
 组件功能
| 功能 | 是否支持 | 备注 | 
| 断点续传 | 支持 | 单次更新失败时,下次一次启动时继续上一次更新下载更新包内容。(引用组件默认生效) | 
| 逐版本更新 | 支持 | 客户端当前版本如果与服务器相差多个版本,则根据多个版本的发布日期逐个更新。(引用组件默认生效) | 
| 二进制差分更新 | 支持 | 对比新老版本通过差分算法生成补丁文件。(引用组件默认生效) | 
| 增量更新功能 | 支持 | 相比上一个版本只更新当前修改过的文件,并且删除当前版本不存在的文件。(引用组件默认生效) | 
| 强制更新 | 支持 | 打开客户端之后直接强制更新。 | 
| 多分支更新 | 支持 | 当一个产品有多个分支时,需要根据不同的分支更新对应的内容。 | 
| 最新版本推送 | 支持 | 基于 Signal R 实现,推送当前最新版本。 | 
| 多语言 | 待验证 | 也可将本组件编写为控制台程序,作为更新“脚本”。更新其他语言的应用程序。 | 
| 跳过更新 | 支持 | 支持注入弹窗让用户决定是否更新本次发布,服务端决定强制时更新不生效。 | 
| 相互升级 | 支持 | 主程序可更新升级程序,升级程序可更新主程序。 | 
| 黑名单 | 支持 | 在更新过程中会跳过黑名单中的文件列表和文件扩展名列表。 | 
| OSS | 支持 | 极简化更新,是一套独立的更新机制。只需要在文件服务器中放置 version.json 的版本配置文件。组件会根据配置文件中的版本信息进行更新下载。 | 
| 回滚、备份 | 支持 | 更新之前会将客户端本地文件备份,如果客户端启动失败或崩溃则回滚覆盖。 | 
| 驱动更新 | 待验证 | 更新之前会将驱动备份到本地,如果客户端启动失败或崩溃则回滚覆盖。 | 
| 自定义方法列表 | 支持 | 注入一个自定义方法集合,该集合会在更新启动前执行。执行自定义方法列表如果出现任何异常,将通过异常订阅通知。(推荐在更新之前检查当前软件环境) | 
| AOT | 支持 | 支持 AOT 编译发布。 | 
 3.GeneralUpdate 支持什么?
 .NET 框架
| 框架名称 | 是否支持 | 
| .NET Core 2.0 | 支持 | 
| .NET 5 … to last version | 支持 | 
| .NET Framework 4.6.1 | 支持 | 
 UI 框架
| UI 框架名称 | 是否支持 | 适配贡献者 | 
| WPF | 支持 | JusterZhu | 
| UWP | 商店模式下不可更新 | lindexi | 
| MAUI | 目前仅支持 Android 平台 | JusterZhu | 
| Avalonia | 支持 | JusterZhu | 
| WinUI | 支持 | JusterZhu | 
| Console | 支持 | JusterZhu | 
| WinForms | 支持 | JusterZhu | 
 操作系统
| 操作系统名称 | 是否支持 | 适配贡献者 | 
| Windows | 支持 | JusterZhu | 
| Linux | 支持 | JusterZhu | 
| Android | 支持 | JusterZhu | 
| 麒麟 V10(飞腾 S2500) | 支持 | 溦 | 
| 麒麟 V10(飞腾 FT-2000) | 支持 | 姚圣伟 | 
| 麒麟 V10(x64) | 支持 | 溦 | 
| Ubuntu | 支持 | JusterZhu | 
| 华为欧拉(EulerOS-鲲鹏 Kunpeng) | 支持 | 姚圣伟 | 
| 龙芯(Loongnix LoongArch) | 支持 | Avalonia 中文社区(董彬 Rabbitism ) | 
| Apple Mac (M1) | 支持 | JusterZhu | 
 4.仓库
 
        
            【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
                
cloudbbs@huaweicloud.com
                
评论(0)