基于多服务端的移动应用程序热更新方法与流程

文档序号:17159632发布日期:2019-03-20 00:29阅读:162来源:国知局
基于多服务端的移动应用程序热更新方法与流程

本发明涉及电子信息技术技术领域,具体为基于多服务端的移动应用程序热更新方法。



背景技术:

目前移动应用程序分为ios和android两大平台,它们都需要使用不同的语言进行编写,而开源社区在长期的发展和贡献下推出了reactnative框架,这使开发人员仅仅用javascript语言便可编写两个平台的应用程序,原生代码会解析javascript代码的逻辑并动态渲染原生组件。javascript可被编译和压缩成一个文件存储在移动应用内,并且随时通过多种途径替换它以达到更新的目的。

在erp软件行业的实际应用中,一款erp软件可能被安装到不同的服务器,在pc端的浏览器输入该服务器的地址即可访问软件,而与其配套的移动应用通常需要先输入服务器地址才能正常使用。但是这种方式存在缺点,如果安装在其中一个服务器的软件不进行更新,而移动应用进行了更新,会产生前后端版本不一致的严重问题。



技术实现要素:

本发明的目的在于提供基于多服务端的移动应用程序热更新方法,以解决上述背景技术提出的移动应用与多服务端版本不同步的技术问题。

为实现上述目的,本发明提供如下技术方案:一种基于多服务端的移动应用程序热更新方法,其特征在于:步骤如下:

移动应用程序使用单个中介服务端连接多个用户服务端,中介服务端注册了所有用户服务端的名称、地址和版本信息;

针对服务端程序版本号生成更新密钥,更新包与密钥绑定,上传到热更新服务器,移动客户端可根据更新密钥获取与其匹配的最新更新包;

移动应用程序在热更新服务器下载并安装更新包,与服务端版本进行了同步。

优选的,所述步骤1不同地区的用户所使用的服务端处于不同的物理地址,移动应用程序作为客户端部署在用户的移动设备上。

优选的,所述步骤2使用md5加密算法对服务器版本号进行加密,得到更新密钥,使用密钥上传更新包到热更新服务器,如果之前已经使用该密钥上传过更新包,会使用新的更新包替换旧的更新包。

优选的,所述步骤3将移动应用程序更新直接部署到其用户的移动设备。热更新服务器时一个中央存储库,它的作用是支持开发人员在上面发布热更新,因此不需要重新构建移动应用的二进制文件,也无需在应用商店重新分发二进制文件。

与现有技术相比,本发明的有益效果是:该基于多服务端的移动应用程序热更新方法:由于用户分布在不同的服务端,移动应用程序启动后,向中介服务端发送登录请求,获取到与其匹配的用户服务端版本信息和更新密钥,与所有可用的更新包深度进行比较,使用更新密钥下载并自动安装对应的更新包,本发明解决了单客户端对应多服务器端的难题,减少了移动应用发布的周期,避免了版本差异带来的风险。

附图说明

图1为本发明移动应用程序热更新方法实施例的流程示意图;

图2为本发明移动应用热更新的流程图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

请参阅图1-2,本发明提供一种技术方案:一种基于多服务端的移动应用程序热更新方法:

参照图1,图1为本发明移动应用程序热更新方法实施例的流程示意图;

本实施例中,该方法包括:

步骤s1,软件的服务端需要先将用户手机号码、软件版本和网络地址同步至中介服务器,以达到向中介服务端注册该用户服务端的目的;

步骤s2,开发人员日常维护前端程序后,编译压缩程序得到javascript更新包,其中,每个javascript更新包都有一串特征码,可以通过md5算法对更新包进行计算得到特征码;

步骤s3,根据当前服务端最新的版本号使用md5加密算法得到一串64位的更新密钥;

步骤s4,将更新密钥和javascript更新包绑定一同上传到热更新服务器;

具体地,如果该更新密钥事先与其他更新包绑定过,将其替换;

步骤s5,以某服务端的一个用户为例,该用户使用他的手机号码和验证码登录移动应用,移动应用请求中介服务器,中介服务器返回该用户所在的服务端对应的更新密钥;

步骤s6,移动应用将步骤s5中获取到的更新密钥和当前正在使用的javascript包的特征码发送到热更新服务器,作为一次动态更新的请求的参数;

步骤s7,热更新服务器接收到请求,返回更新包下载路径;

具体地,热更新服务器会先通过更新密钥检索到最新的javascript更新包,并比较该更新包的特征码与接收参数中的特征码,如果不一致,返回最新更新包的下载路径,否则返回空;

步骤s8,接收到下载路径,下载更新包,下载完成后,替换掉本地正在使用的javascript包,并重新渲染本地程序;

尽管参照前述实施例对本发明进行了详细的说明,对于本领域的技术人员来说,其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。



技术特征:

技术总结
本发明涉及基于多服务端的移动应用程序热更新方法,所述方法包括以下步骤热更新服务器会通过更新密钥查询该密钥下更新包的特征码与发送过来的特征码是否一致,如果不一致,返回该密钥下最新的更新包下载路径。其中,更新包就是JavaScript的编译压缩包。基于多服务端的移动应用程序热更新方法由于用户分布在不同的服务端,移动应用程序启动后,向中介服务端发送登录请求,获取到与其匹配的用户服务端版本信息和更新密钥,与所有可用的更新包深度进行比较,使用更新密钥下载并自动安装对应的更新包。本发明解决了单客户端对应多服务器端的难题,减少了移动应用发布的周期,避免了版本差异带来的风险。

技术研发人员:蔡戈辉
受保护的技术使用者:珠海市网欣软件开发有限公司
技术研发日:2018.12.18
技术公布日:2019.03.19
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1