提供升级包的方法与装置以及升级客户端的方法与装置的制造方法

文档序号:9870389
提供升级包的方法与装置以及升级客户端的方法与装置的制造方法
【技术领域】
[0001]本发明涉及计算机技术领域,特别涉及一种提供升级包的方法与装置以及升级客户端的方法与装置。
【背景技术】
[0002]随着JAVA语言的流行,越来越多的客户端程序都采用JAVA语言来编写,例如,大量的安卓手机中的应用程序。
[0003]在对这些客户端程序进行升级时,通常的做法都是从服务端上下载最新的全量包,对客户端进行全量替换,如果客户端程序体积比较庞大,那么由此带来的带宽的消耗将相当可观。事实上每次客户端升级时,只需将有改动的部分下载到客户端并执行替换即可,下载其它的未发生变化的内容只是白白浪费了宝贵的带宽。另外,当同时有大量的客户端访问升级服务器请求升级时,也会造成对升级服务器的压力过大,影响升级服务器的性能。
[0004]从以上的描述中,传统的客户端升级方法有以下几方面缺点:
[0005]1.客户端升级时采用全量升级方式,浪费用户带宽。
[0006]2.当有新的版本时,用户不能及时获取版本变更消息。
[0007]3.当有新版本发布时,大量需要进行客户端升级的用户同时访问升级服务器,易造成网络拥堵,增大了升级服务器的压力,影响升级服务器性能,进而影响了用户体验。
[0008]4.客户端升级完成后,需要重启客户端才能使升级生效。

【发明内容】

[0009]有鉴于此,本发明提供一种提供升级包的方法与装置以及升级客户端的方法与装置,用户在对客户端进行升级时,当已经有完成升级的其他客户端时,可直接通过已升级完的客户端下载升级包,无需从升级服务器下载,从而减轻升级服务器的负载压力;另外,用户在对自己的客户端升级时,只需将改动的部分下载并执行替换即可,从而避免了对用户带宽的浪费;同时,当有新的客户端版本时,用户能够及时得到版本更新消息,从而及时对客户端进行升级,并且升级完的客户端不需要重启就能生效,在一定程度上提高了用户对客户端的使用体验。
[0010]为实现上述目的,根据本发明的第一方面,提供了一种提供升级包的方法。
[0011]本发明的提供升级包的方法包括:升级包制作装置制作客户端升级所需的升级包,然后将该升级包发送给升级服务器;升级服务器接收并保存所述升级包,并根据该升级包的版本信息向当前客户端升级装置推送版本变更消息;升级服务器接收所述客户端升级装置在收到所述版本变更消息后所发出的升级请求,在确定有已完成升级的在线的客户端时,将已完成升级的在线的客户端地址列表作为升级包的下载方式返回给客户端升级装置。
[0012]可选地,升级服务器接收所述客户端升级装置在收到所述版本变更消息后所发出的升级请求的步骤之后还包括:在确定没有已完成升级的在线的客户端时,将升级服务器中的升级包的下载地址作为升级包的下载方式返回给客户端升级装置。
[0013]可选地,升级包制作装置制作客户端升级所需的升级包的步骤包括:升级包制作装置查找服务器中最新客户端程序与上一个版本客户端程序相比之间存在的变更,并根据该变更制作升级包。
[0014]可选地,升级包制作装置查找服务器中最新客户端程序与上一个版本客户端程序相比之间存在的变更,并根据该变更制作升级包的步骤包括:升级包制作装置递归查找最新客户端程序与上一个版本客户端程序的目录及子目录下的文件,并判断两个客户端版本中的文件是否为同名文件,如果是同名文件,则继续对比两个同名文件的信息摘要算法5的值,该值相等则确定两个文件相同,否则确定所述变更是对文件进行了修改;如果不是同名文件,则继续判断该文件属于哪个版本的客户端程序,若属于最新客户端程序,则确定所述变更是新增了文件,否则确定所述变更是删除了文件;将所述修改的内容压缩成设定格式的文件包;将所述设定格式的文件包、新增的文件以及删除的文件按文件的存放路径压缩成升级包,并在升级包中生成升级包说明文件;所述升级包说明文件用于记录升级包的版本、文件的操作类型、以及存放路径信息;所述操作类型包括合并操作、增加操作、以及删除操作。
[0015]根据本发明的第二方面,提供了一种提供升级包的装置。
[0016]本发明的提供升级包的装置包括:升级包制作装置和升级服务器;升级包制作装置用于制作客户端升级所需的升级包,然后将该升级包发送给升级服务器;升级服务器用于接收并保存所述升级包,并根据该升级包的版本信息向当前客户端升级装置推送版本变更消息,然后接收所述客户端升级装置在收到所述版本变更消息后所发出的升级请求,在确定有已完成升级的在线的客户端时,将已完成升级的在线的客户端地址列表作为升级包的下载方式返回给客户端升级装置。
[0017]可选地,还包括确定模块,设置于升级服务器中,用于在确定没有已完成升级的在线的客户端时,将升级服务器中的升级包的下载地址作为升级包的下载方式返回给客户端升级装置。
[0018]可选地,所述升级包制作装置还用于查找服务器中最新客户端程序与上一个版本客户端程序相比之间存在的变更,并根据该变更制作升级包。
[0019]可选地,所述升级包制作装置还用于递归查找最新客户端程序与上一个版本客户端程序的目录及子目录下的文件,并判断两个客户端版本中的文件是否为同名文件,如果是同名文件,则继续对比两个同名文件的信息摘要算法5的值,值相等则确定两个文件相同,否则确定所述变更是对文件进行了修改;如果不是同名文件,则继续判断该文件属于哪个版本的客户端程序,属于最新客户端程序,则所述变更是新增了文件,否则确定所述变更是删除了文件;将所述修改的内容压缩成设定格式的文件包;将所述设定格式的文件包、新增的文件以及删除的文件按文件的存放路径压缩成升级包,并在升级包中生成升级包说明文件;所述升级包说明文件用于记录升级包的版本、文件的操作类型、以及存放路径信息;所述操作类型包括合并操作、增加操作、以及删除操作。
[0020]根据本发明的第三方面,提供了一种升级包客户端的方法。
[0021]本发明的升级客户端的方法包括:客户端升级装置接收升级服务器所推送的版本变更消息,并将该版本变更消息中的版本与客户端本身的版本进行比对,如果版本变更消息中的版本比客户端版本高,则向升级服务器发送升级请求;否则,保持当前客户端版本;客户端升级装置在确定所述版本变更消息中的版本比客户端版本高时,接收升级服务器所提供的已完成升级的在线的客户端地址列表,然后根据所述客户端地址列表下载所述升级包,以及使用该升级包对客户端进行升级。
[0022]可选地,使用该升级包对客户端进行升级的步骤之后包括:当其他未升级的客户端需要升级时,客户端升级装置将该升级包提供给与该客户端连接的其他未升级的客户端。
[0023]可选地,客户端升级装置在确定所述版本变更消息中的版本比客户端版本高的步骤之后包括:接收升级服务器所提供的的升级服务器中的升级包的下载地址,然后根据该升级服务器中的升级包的下载地址下载所述升级包,以及使用该升级包对客户端进行升级。
[0024]可选地,所述使用该升级包对用户客户端进行升级的步骤包括:客户端升级装置判断升级包中的文件是否为设定格式的文件,如果是,则将该设定格式的文件解压,然后根据升级包说明文件中的描述,找到该设定格式的文件所对应的客户端原始文件,将升级包中的设定格式的文件合并到该原始文件中从而得到合并文件,并按照设定的方式加载该合并文件,完成设定格式的文件的替换;否则,根据升级包说明文件中文件的操作类型以及存放路径
再多了解一些
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1