一种软件更新方法及装置制造方法及图纸

技术编号:15520303 阅读:80 留言:0更新日期:2017-06-04 09:54
本发明专利技术公开了一种软件更新方法,包括以下步骤:获取SVN服务器中更新后的软件数据;将更新后的软件数据与本地软件数据进行比对,以筛选与本地软件数据存在差异的文件;将存在差异的文件进行分割打包;将分割打包后的包文件发送至缓存端,并记录存在差异的文件的文件信息;根据发布指令更新软件版本号,软件版本号与包文件对应;当软件版本号更新后,根据待更新端的请求发送文件信息和包文件,以实现待更新端软件的热更新。本发明专利技术还公开一种软件更新装置和系统。通过上述方式,本发明专利技术能够采用统一的更新提交接口提交更新数据,且简便、可控地进行软件热更新。

Software updating method and device

The invention discloses a software update method comprises the following steps: obtaining software update SVN server; the software data and local data updated software for comparison, there are differences in the file selection and local software data; there will be differences in the file segmentation package; separate package files sent to the cache after the end of the package, and record the file information difference file; according to the instructions to update the software version number, version number and corresponding software package files; when the software version number is updated according to the update request end of file information and package file to be updated, in order to achieve thermal update software. The invention also discloses a software updating device and system. By adopting the method, the invention can adopt a uniform update submission interface to submit updated data, and a simple and controllable software thermal update is carried out.

【技术实现步骤摘要】
一种软件更新方法及装置
本专利技术涉及计算机
,特别是涉及一种软件更新方法及装置。
技术介绍
在软件研发领域,版本热更新为必不可少的功能,版本热更新是指软件可在线更新,无需重新下载客户端,只需下载资料包,即可完成版本更新。对于游戏软件,其版本更新通常包括游戏数据、美术资源及功能代码,游戏数据是指游戏中需要使用到的各类型定义数据,如物品信息、角色属性等,美术资源是指游戏中的地图、人物模型及各种UI画面,功能代码是指游戏中各种功能的实现代码。对于游戏软件版本热更新功能,其设计、操作、管理难度较高,具体原因如下:版本热更新频率较高,为让玩家保持新鲜感,在游戏运营过程中,会按照一定的周期进行内容更新,不断推出新的游戏内容,另外,会根据游戏过程中的反馈进行数据方面的优化调整;版本热更新主要用于生成环境,每次更新都是直接面对玩家,因此需要保证热更新的流程准确无误,尤其要确保流程的可控性,避免热更新流程中因人为错误而导致的问题;版本热更新牵涉的人员较广,热更新涉及多个部分,如游戏数据、美术资源、功能代码,在开发过程中,各部分分属不同的人员进行开发管理。如何采用统一的更新提交接口提交更新数据,且简便、可控地进行软件更新,是游戏软件版本热更新亟待解决的问题之一。
技术实现思路
本专利技术主要解决的技术问题是提供一种软件更新方法及装置,能够采用统一的更新提交接口提交更新数据,且简便、可控地进行软件热更新。为解决上述技术问题,本专利技术提供一种软件更新方法,包括以下步骤:获取SVN服务器中更新后的软件数据;将更新后的软件数据与本地软件数据进行比对,以筛选与本地软件数据存在差异的文件;将存在差异的文件进行分割打包;将分割打包后的包文件发送至缓存端,并记录存在差异的文件的文件信息;根据发布指令更新软件版本号,软件版本号与包文件对应;当软件版本号更新后,根据待更新端的请求发送文件信息和包文件,以实现待更新端软件的热更新。其中,更新后的软件数据采用SVN服务器的提交接口进行数据提交。其中,缓存端为内容分发网络。其中,待更新端为客户端或服务器端。其中,当软件版本号更新后,根据待更新端的请求发送文件信息和包文件,以实现待更新端软件的热更新的步骤包括:当软件版本号更新后,发送软件版本号更新消息至服务器端;根据服务器端的请求返回软件版本号、文件信息及包文件,以实现服务器端软件的热更新。为解决上述技术问题,本专利技术提供一种软件更新装置,包括:获取模块,用于获取SVN服务器中更新后的软件数据;比对模块,用于将更新后的软件数据与本地软件数据进行比对,以筛选与本地软件数据存在差异的文件;打包模块,用于将存在差异的文件进行分割打包;发送记录模块,用于将分割打包后的包文件发送至缓存端,并记录存在差异的文件的文件信息;更新模块,用于根据发布指令更新软件版本号,软件版本号与包文件对应;发送模块,用于当软件版本号更新后,根据待更新端的请求发送文件信息和包文件,以实现待更新端软件的热更新。其中,更新后的软件数据采用SVN服务器的提交接口进行数据提交。其中,待更新端为客户端或服务器端。其中,发送模块包括:发送单元,用于当软件版本号更新后,发送软件版本号更新消息至服务器端;返回单元,用于根据服务器端的请求返回软件版本号、文件信息及包文件,以实现服务器端软件的热更新。为解决上述技术问题,本专利技术提供一种软件更新系统,包括上述软件更新装置和用于存储更新后的软件数据的SVN服务器。本专利技术的有益效果是:区别于现有技术的情况,本专利技术的软件更新方法具体为:首先获取SVN服务器中更新后的软件数据,其中,更新后的软件数据采用SVN服务器的提交接口进行数据提交;然后将更新后的软件数据与本地软件数据进行比对,以筛选与本地软件数据存在差异的文件,将存在差异的文件进行分割打包,将分割打包后的包文件发送至缓存端,并记录存在差异的文件的文件信息;最后根据发布指令更新软件版本号,其中,软件版本号与包文件对应,当软件版本号更新后,根据待更新端的请求发送文件信息和包文件,以实现待更新端软件的热更新。通过上述方式,本专利技术软件更新简便、可控,满足游戏软件版本热更新频率高的要求,减少热更新过程中的人为操作;利用SVN服务器的提交接口进行更新后的软件数据的提交,由于提交接口统一,可确保更新后的软件数据的可靠性。附图说明图1是本专利技术软件更新方法一实施例的流程示意图;图2是本专利技术软件更新装置一实施例的结构示意图。具体实施方式下面结合附图和实施例对本专利技术进行详细说明。请参阅图1,图1是本专利技术软件更新方法一实施例的流程示意图,如图1所示,包括以下步骤:S11,获取SVN服务器中更新后的软件数据。本实施例方法由游戏软件版本热更新平台实现,为基于SVN(Subversion)管理的游戏软件版本热更新方法。在本实施例中,更新后的软件数据采用SVN服务器的提交接口进行数据提交。对于软件版本热更新,其首要要求为低出错率,因为生成环境上的错误,都会导致重大的运营事故。利用SVN作为更新资料的管理,可避免更新资料的出错,原因主要有:不同资料提供者均对SVN的使用非常熟悉,减少因为使用不熟悉的工具所造成的人为错误;利用SVN同步机制,可防止不同资料提供者对同一份资料修改导致的信息覆盖错误;利用SVN版本控制特性,可以很方便的进行历史版本的回溯,对于资料更新错误,可以很方便地进行查找;SVN作为成熟的版本管理,稳定性非常高,可增加版本热更新的稳定性。对于更新后的软件数据,其提交过程具体为:资料发布者通过本地的SVN客户端连接到SVN服务器,首先更新最新的资料库到本地,以确保本地和SVN服务器资料的同步,然后把需要更新的资料文件拷贝到本地资料存放目录,根据预先设定好的目录进行存放,该目录可根据游戏的不同自行设定,再者利用SVN客户端的比对功能,进行资料检查,确认资料更新的正确性,最后确认更新资料正确后,向SVN服务器进行提交,SVN服务器对更新后的软件数据进行存储。在提交过程中,若部分资料无法提交,则表明有资料文件冲突,需重新更新资料,并自行进行资料的合并。S12,将更新后的软件数据与本地软件数据进行比对,以筛选与本地软件数据存在差异的文件。S13,将存在差异的文件进行分割打包。S14,将分割打包后的包文件发送至缓存端,并记录存在差异的文件的文件信息。游戏软件的版本发布由管理者进行管理,当更新资料提交完毕,管理者发出版本生成指令,此时生成的版本为可发布版本,但不立即发布。版本生成的过程具体为:当管理者发出版本生成指令后,游戏软件版本热更新平台获取SVN服务器中更新后的软件数据;将更新后的软件数据与本地软件数据进行比对,以筛选与本地软件数据存在差异的文件,即筛选出所有有变更的文件,该筛选出来的文件为后续版本包生成材料;存在差异的文件筛选出来后,自动对其进行分割打包,具体打包成便于下载的压缩文件;将打包后的包文件传输至缓存端,以备下载;包文件传输至缓存端后,记录存在差异的文件的文件信息。在本实施例中,缓存端为内容分发网络(ContentDeliveryNetwork,CDN)。S15,根据发布指令更新软件版本号,软件版本号与包文件对应。管理者接收到版本生成完成的消息后,具体为通过邮件的方式接收,可根据游戏的需要进行版本发布。管理者登录本文档来自技高网...
一种软件更新方法及装置

【技术保护点】
一种软件更新方法,其特征在于,包括以下步骤:获取SVN服务器中更新后的软件数据;将所述更新后的软件数据与本地软件数据进行比对,以筛选与所述本地软件数据存在差异的文件;将所述存在差异的文件进行分割打包;将所述分割打包后的包文件发送至缓存端,并记录存在差异的文件的文件信息;根据发布指令更新软件版本号,所述软件版本号与所述包文件对应;当所述软件版本号更新后,根据待更新端的请求发送所述文件信息和包文件,以实现待更新端软件的热更新。

【技术特征摘要】
1.一种软件更新方法,其特征在于,包括以下步骤:获取SVN服务器中更新后的软件数据;将所述更新后的软件数据与本地软件数据进行比对,以筛选与所述本地软件数据存在差异的文件;将所述存在差异的文件进行分割打包;将所述分割打包后的包文件发送至缓存端,并记录存在差异的文件的文件信息;根据发布指令更新软件版本号,所述软件版本号与所述包文件对应;当所述软件版本号更新后,根据待更新端的请求发送所述文件信息和包文件,以实现待更新端软件的热更新。2.根据权利要求1所述的软件更新方法,其特征在于,所述更新后的软件数据采用SVN服务器的提交接口进行数据提交。3.根据权利要求1所述的软件更新方法,其特征在于,所述缓存端为内容分发网络。4.根据权利要求1所述的软件更新方法,其特征在于,所述待更新端为客户端或服务器端。5.根据权利要求4所述的软件更新方法,其特征在于,所述当所述软件版本号更新后,根据待更新端的请求发送所述文件信息和包文件,以实现待更新端软件的热更新的步骤包括:当所述软件版本号更新后,发送软件版本号更新消息至所述服务器端;根据所述服务器端的请求返回所述软件版本号、文件信息及包文件,以实现服务器端软件的热更新。6.一种软件更新装置,...

【专利技术属性】
技术研发人员:黄骏
申请(专利权)人:广州谷得网络科技有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1