本发明涉及软件升级领域,特别涉及一种基于electron的多客户打包升级方法及设备。
背景技术:
1、基于金融行业的行业特性,出于安全性、稳定性和兼容性的考虑,大部分系统都需要获取用户mac等终端数据,因此,传统的web应用不能满足需求。
2、所以目前大部分选择electron进行客户端的开发,当应用有多个版本且有多个客户时,维护起来很麻烦。传统的做法是在给不同的客户打包时需要修改不同客户的appid、站点、图片等配置重新打包至应用中,一旦有配置的修改等就需要重新打包,且不同客户的配置难以维护,或者另外给客户建一个代码分支,但是当版本修复缺陷时需要同步多个分支,也难以维护。
3、作为金融行业的第三方系统提供商,一个成熟的产品必然会对接多个客户,产品除了维护自己的正常版本迭代之外,还需要维护客户的相关配置和自动升级方案。手动维护大量客户配置相当繁琐,容易出错,且用户修改配置需要重新打包后让客户重新升级客户端,影响用户体验。
技术实现思路
1、本发明的目的在于提供一种基于electron的多客户打包升级方法及设备。
2、为解决上述问题,本发明提供一种基于electron的多客户打包升级方法,包括:
3、步骤s1,cid录入平台获取对应于客户cid号的最新客户配置信息,并进行存储;
4、步骤s2,客户端打包时通过打包脚本获取客户cid号,基于获取到的客户cid号,从cid录入平台获取对应的最新客户配置信息,将获取到的最新客户配置信息作为当前客户配置信息,并存储到客户端的本地;
5、步骤s3,客户端应用通过渲染进程基于本地的当前客户配置信息,或基于从cid录入平台获取到的对应于客户cid号的最新客户配置信息,渲染展示客户端应用页面。
6、进一步的,在上述方法中,最新客户配置信息包括:客户cid号、至少一个服务站点地址、客户logo、定制化图片资源、客户端升级地址及客户端是否自动升级。
7、进一步的,在上述方法中,步骤s2,将获取到的最新客户配置信息作为当前客户配置信息,并存储到客户端的本地,包括:
8、客户端动态从cid录入平台将客户cid号、客户端升级地址和服务站点地址写入package.json中;将package.json、服务站点地址、客户logo和定制化图片资源,作为当前客户配置信息,存储到客户端的本地。
9、进一步的,在上述方法中,客户端打包时通过打包脚本获取客户cid号,基于获取到的客户cid号,从cid录入平台获取对应的最新客户配置信息,将获取到的最新客户配置信息作为当前客户配置信息,并存储到客户端的本地,包括:
10、客户端打包时通过打包脚本获取客户cid号,基于获取到的客户cid号,从cid录入平台获取对应的最新客户配置信息;
11、比较最新客户配置信息与当前客户配置信息是否一致,若不一致,则主进程将最新客户配置信息作为更新后的当前客户配置信息,并存储到客户端的本地。
12、进一步的,在上述方法中,步骤s3,客户端应用通过渲染进程基于本地的当前客户配置信息,或基于从cid录入平台获取到的应于客户cid号的最新客户配置信息,渲染展示客户端应用页面,包括:
13、客户端应用打开的过程中,通过渲染进程向主进程发送消息,主进程向cid录入平台请求对应于客户cid号的最新客户配置信息;
14、若请求成功,且最新客户配置信息的反馈时间在预设时间内,主进程比较最新客户配置信息与当前客户配置信息是否一致,若不一致,则主进程将最新客户配置信息作为更新后的当前客户配置信息,并存储到客户端的本地;且主进程将最新客户配置信息返回给渲染进程,渲染进程基于最新客户配置信息,渲染展示客户端应用页面。
15、进一步的,在上述方法中,客户端应用打开的过程中,通过渲染进程向主进程发送消息,主进程向cid录入平台请求对应于客户cid号的最新客户配置信息之后,还包括:
16、若请求成功,但最新客户配置信息的反馈时间超过预设时间,则渲染进程基于客户端的本地的当前客户配置信息,渲染展示客户端应用页面后;主进程比较最新客户配置信息与当前客户配置信息是否一致,若不一致,将最新客户配置作为更新后的当前客户配置信息,并存储到客户端的本地。
17、进一步的,在上述方法中,客户端应用打开的过程中,通过渲染进程向主进程发送消息,主进程向cid录入平台请求对应于客户cid号的最新客户配置信息之后,还包括:
18、若请求失败,渲染进程使用客户端的本地的当前客户配置信息,渲染展示客户端应用页面。
19、进一步的,在上述方法中,若最新客户配置信息中的客户端是否自动升级设置为是自动升级,则步骤s3,渲染展示客户端应用页面之后,还包括:
20、客户端的主进程使用electron-updater插件,每次从部署客户端的服务器获取的包含客户端的版本号的lastest.yml文件;
21、比较本次获取的lastest.yml文件的客户端的版本号与上次获取的lastest.yml文件的客户端的版本号是否一致;
22、若不一致,则从部署客户端的服务器获取对应的客户端升级文件,以对客户端进行升级。
23、根据本发明的另一方面,还提供一种计算机可读存储介质,其上存储有计算机可执行指令,其中,该计算机可执行指令被处理器执行时使得该处理器:执行上述任一实施例所述的方法。
24、根据本发明的另一方面,还提供一种计算器设备,其中,包括:
25、处理器;以及
26、被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器:执行上述任一实施例所述的方法。
27、与现有技术相比,本发明提供的客户配置信息打包优化流程能自动读取cid录入平台的配置信息的方式,可以实时更新客户配置信息,无需大量的人工维护,可以大量减少人力维护成本,优化代码管理,减少升级出错概率,优化用户体验。
28、本发明适用于基于electron搭建的客户端应用,只需要通过修改cid录入平台的客户配置信息,就能实时生效针对某个客户的配置文件相关修改。现针对客户修改的配置,而非系统功能的升级无需重新升级客户端,而且在给不同客户升级时,无需再人工不断维护大量配置。
1.一种基于electron的多客户打包升级方法,其特征在于,包括:
2.如权利要求1所述的基于electron的多客户打包升级方法,其特征在于,最新客户配置信息包括:客户cid号、至少一个服务站点地址、客户logo、定制化图片资源、客户端升级地址、客户端是否自动升级。
3.如权利要求2所述的基于electron的多客户打包升级方法,其特征在于,步骤s2,将获取到的最新客户配置信息作为当前客户配置信息,并存储到客户端的本地,包括:
4.如权利要求2所述的基于electron的多客户打包升级方法,其特征在于,步骤s2,客户端打包时通过打包脚本获取客户cid号,基于获取到的客户cid号,从cid录入平台获取对应的最新客户配置信息,将获取到的最新客户配置信息作为当前客户配置信息,并存储到客户端的本地,包括:
5.如权利要求2所述的基于electron的多客户打包升级方法,其特征在于,步骤s3,客户端应用通过渲染进程基于本地的当前客户配置信息,或基于从cid录入平台获取到的应于客户cid号的最新客户配置信息,渲染展示客户端应用页面,包括:
6.如权利要求5所述的基于electron的多客户打包升级方法,其特征在于,客户端应用打开的过程中,通过渲染进程向主进程发送消息,主进程向cid录入平台请求对应于客户cid号的最新客户配置信息之后,还包括:
7.如权利要求5所述的基于electron的多客户打包升级方法,其特征在于,客户端应用打开的过程中,通过渲染进程向主进程发送消息,主进程向cid录入平台请求对应于客户cid号的最新客户配置信息之后,还包括:
8.如权利要求2所述的基于electron的多客户打包升级方法,其特征在于,若最新客户配置信息中的客户端是否自动升级设置为是自动升级,则步骤s3,渲染展示客户端应用页面之后,还包括:
9.一种计算机可读存储介质,其上存储有计算机可执行指令,其中,该计算机可执行指令被处理器执行时使得该处理器:执行如权利要求1至8任一项所述的方法。
10.一种计算器设备,其中,包括: