最近时间稍微空闲,整理下云屏整机设备的OTA流程及方案。之前开发时有过定义/设计,这里稍微整理总结下
整机软件有很多模块,系统及外设固件、Windows服务、Windows应用,比如系统点屏9969、摄像头固件、触摸框固件、显卡驱动、Windows一些自研服务(用于通信以及系统修复等)、全家桶应用(白板、分屏、传屏等)
整机,因为硬件设计不同也区分不同整机类型比如8K、4K,红外屏、电容屏,新的点屏方案EDP等,需要根据整机迭代搭配相应的配套整机软件。
整机也有定制项目,会议市场就是2B行业,客户在软件上有一些定制需求很正常,配套软件需要与公版软件区分、单独管理。
整机软件,通过Windows应用软件即全家桶为入口来完成配套软件的升级。下面详细介绍下升级流程
OTA升级策略
1. 在线升级
在OTA管理前端,上传整机软件升级文件如H3C_Full.ota文件。不同的整机迭代以及定制项目,都有一个单独的整机ID作为标识用户升级
用户升级,即用户能感知、有用户交互的升级方式。目前集成在Setting升级模块中,用户可以操作。在前端选择升级策略-用户升级,然后用户在客户端Setting进行升级。 用户升级分俩块:主动点击下载安装升级,以及自动升级。管理员升级
是用于解决用户升级流程可能中断的升级方式,一般由厂商自己操作、推送紧急或者致命版本 在管理后台选择升级策略-强制升级、静默升级,然后大屏会启动OTA.exe,会帮用户进行默默升级,下次重启大屏完成版本的切换。 设计这俩个升级策略是开发来主导的,我的考虑是用户升级和管理员升级要独立开来,俩套应用。 1.防止用户升级搞坏了,还有管理员升级备用方案。升级功能很重要,应该把健壮性考虑进去 2.或者推送出去的版本,有致命问题。可以通过强制升级来让用户端快速升级新版本。 3.用户端很久未主动升级至新版本,版本过于老旧,也可以通过静默升级切换新版本2. 离线升级
用户Setting升级界面有个离线安装模块,在Setting关于界面选择本地OTA文件,进行本地升级。 离线升级,支持所有的OTA文件,即可以是整机软件升级(H3C_Full.ota),也可以模块升级(全家桶、9969、固件)、单独升级某个模块。升级整机软件,会修改整机软件版本号,升级模块则只会变更模块版本号。OTA文件
这里讲下OTA文件概率、结构以及文件种类的定义 OTA文件,只有一个来源Jenkins在线构建。可以用于在线升级,也可以给用户进行离线以某个整机软件为例,
这里的.ota文件,先有模块.ota文件如摄像头:- 摄像头.ota
- 麦克风.ota
- 触摸框.ota
- 白板.ota
然后组装成组合升级文件:
- 全家桶.ota -- 包含白板、批注、传屏等,只升级windows应用
- H3C_Full.ota -- 整机全套软件,升级后会变更整机版本号
整机项目升级
开头说了整机机型以及定制项目,这些都需要独立的配套软件版本进行管理,以避免功能不匹配或者需求混乱。
之前有个8K机,因海外和国内的需求相差太大,功能裁剪比较多。海外单独出了一个整机软件配套,它的整机项目ID是H3C_Full_Oversea,对应的OTA升级软件H3C_Full_Oversea.ota
整机软件需要不同的配套来满足不同软硬件的整合
而单独的模块比如全家桶白板应用,它对不同的整机类型就可以适配,只需要一个仓库以及输出版本就行了。
整机类型比如一代机、二代机,在相应的功能入口以机型进行区分。
所以整机配套软件,对机型我们是内部兼容,对项目需求是独立管理代码分支以及版本。
值得一提的是,因为库存或者设备挪用,会从整机基线项目转到客户定制项目,软件需求不同。这时候就需要软件项目迁移了,可以在H3C_Full.ota添加旧整机项目ID以及新整机项目ID,完成迁移至指定整机项目版本的迁移,迁移后就走后续新ID的在线升级流程了。
标签:整机,ota,升级,模块,OTA,软件,云屏 From: https://www.cnblogs.com/kybs0/p/18307611