软件更新方法、软件更新服务器、客户端和系统的制作方法

文档序号:7815758阅读:208来源:国知局
软件更新方法、软件更新服务器、客户端和系统的制作方法
【专利摘要】本发明公开了一种软件更新方法、软件更新服务器、客户端和软件更新系统。其中软件更新方法包括:获取并保存与指定软件相关的软件更新信息;获取客户端处与指定软件相关的软件安装信息;根据软件更新信息与从客户端处获取的软件安装信息确定指定软件的更新模式;其中,更新模式包括安装指定软件的更新程序或者安装指定软件更新版本的安装程序;将更新模式及更新所需信息推送至客户端。本申请的技术方案通过预先获取和保存软件更新信息,以及实时地获取客户端处的软件安装信息,并且根据软件更新信息和软件安装信息确定软件更新模式,能够准确和实时地检测到特定软件是否需要更新以及软件需要更新时应采用的软件更新模式。
【专利说明】软件更新方法、软件更新服务器、客户端和系统

【技术领域】
[0001] 本发明涉及计算机【技术领域】,具体涉及一种软件更新方法、一种软件更新服务器、 一种客户端和一种软件更新系统。

【背景技术】
[0002] 游戏玩家在进行游戏前,往往需要更新到最新版本才能体验到最好的效果,因此 游戏更新技术需要精确判断客户端安装的某一游戏软件是否需要更新并提供相应的更新 方案。一种游戏更新方案是在游戏用户运行游戏时客户端访问游戏官网而查询是否需要更 新进而提示用户更新;另一种游戏更新方案是使用者在运行游戏之前通过手动选择的方式 配置客户端更新游戏,客户端进行监测并在监测到需要更新游戏时提示用户更新,但是上 述的游戏更新方案成本较高,实时性较差,不能及时准确地进行更新,例如当游戏很长时间 未更新时,从官网获取的更新程序(即,更新补丁)已经无效了,需要通过运行软件更新版 本的安装程序而重新安装游戏,这种情况仍需要用户自己去游戏官网下载完整的安装程序 重装游戏。
[0003] 其余类型的软件(如聊天工具等)的更新方法,与上述两种方案类似,存在类似的 缺点。


【发明内容】

[0004] 鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上 述问题的一种软件更新方法、一种软件更新服务器、一种客户端和一种软件更新系统。
[0005] 依据本发明的一个方面,提供了一种软件更新方法。该方法包括如下步骤:获取 并保存与指定软件相关的软件更新信息;获取客户端处与所述指定软件相关的软件安装信 息;根据所述软件更新信息与从客户端处获取的所述软件安装信息确定所述指定软件的更 新模式;其中,所述更新模式包括安装所述指定软件的更新程序或者安装所述指定软件更 新版本的安装程序;将所述更新模式及更新所需信息推送至所述客户端。
[0006] 其中,所述与指定软件相关的软件更新信息包括:通用唯一识别码、软件官网地 址、软件最新版本信息、所述指定软件更新版本的安装程序下载地址和/或所述指定软件 的更新程序下载地址、软件旧版本信息以及对应的更新模式、所述指定软件的更新程序的 安装脚本和/或所述指定软件更新版本的安装程序的安装脚本。
[0007] 其中,所述获取并保存与指定软件相关的软件更新信息包括:获取并保存所述指 定软件更新版本的安装程序下载地址和/或所述指定软件的更新程序下载地址;根据所述 指定软件新旧版本的依赖关系确定并保存所述软件旧版本信息以及对应的更新模式。
[0008] 其中,所述软件安装信息包括通用唯一识别码与软件旧版本信息;所述根据所述 软件更新信息与从客户端处获取的所述软件安装信息确定所述指定软件的更新模式,包 括:根据统一唯一识别码与软件旧版本信息,检索得到对应的更新模式。
[0009] 其中,若所述更新模式为安装所述指定软件的更新程序,则将所述更新模式及更 新所需信息推送至所述客户端,包括:将所述更新模式以及指定软件的更新程序的安装脚 本,推送至所述客户端;若所述更新模式为安装所述指定软件更新版本的安装程序,则将所 述更新模式及更新所需信息推送至所述客户端,包括:将所述更新模式以及指定软件更新 版本的安装程序的安装脚本推送至所述客户端。
[0010] 其中,若所述更新模式为安装所述指定软件的更新程序,则将所述更新模式及更 新所需信息推送至所述客户端,进一步包括:将指定软件的更新程序的下载地址推送至所 述客户端;若所述更新模式为安装所述指定软件更新版本的安装程序,则将所述更新模式 及更新所需信息推送至所述客户端,进一步包括:将指定软件更新版本的安装程序的下载 地址推送至所述客户端。
[0011] 其中,若所述更新模式为安装所述指定软件的更新程序,则将所述更新模式及更 新所需信息推送至所述客户端,进一步包括:将指定软件的更新程序的MD5值推送至所述 客户端;若所述更新模式为安装所述指定软件更新版本的安装程序,则将所述更新模式及 更新所需信息推送至所述客户端,进一步包括:将指定软件更新版本的安装程序的MD5值 推送至所述客户端。
[0012] 根据本发明的另一方面,提供了一种软件更新方法,该方法包括如下步骤:获取 与指定软件相关的软件安装信息,并发送至更新服务器;从更新服务器获取更新模式及更 新所需信息;根据更新模式及更新所需信息获取更新程序或安装程序;根据预设安装模式 安装所述更新程序或安装程序;所述预设安装模式包括:后台自动安装或提示用户手动安 装。
[0013] 其中,所述后台自动安装包括:获取预先配置的指定软件的更新程序的安装脚本 或所述指定软件更新版本的安装程序的安装脚本;启动虚拟桌面,调用所述安装脚本进行 后台自动安装。
[0014] 其中,在进行后台自动安装之前还包括:检测客户端本地系统资源占用率,当系统 资源占用率低于预定阈值时启动后台自动安装。
[0015] 其中,该方法还包括:在获取更新程序或安装程序之后、安装所述更新程序或安装 程序之前,针对所述更新程序或安装程序进行安全校验。
[0016] 根据本发明的另一方面,提供了一种软件更新服务器,包括:第一信息配置单元, 适于获取并保存与指定软件相关的软件更新信息;第二信息配置单元,适于获取客户端处 与所述指定软件相关的软件安装信息;模式判别单元,适于根据所述软件更新信息与从客 户端处获取的所述软件安装信息确定所述指定软件的更新模式;其中,所述更新模式包括 安装所述指定软件的更新程序或者安装所述指定软件更新版本的安装程序;信息发送单 元,适于将所述更新模式及更新所需信息推送至所述客户端。
[0017] 其中,所述第一信息配置单元,适于获取并保存与指定软件相关的通用唯一识别 码、软件官网地址、软件最新版本信息、所述指定软件更新版本的安装程序下载地址和/或 所述指定软件的更新程序下载地址、软件旧版本信息以及对应的更新模式、所述指定软件 的更新程序的安装脚本和/或所述指定软件更新版本的安装程序的安装脚本。
[0018] 其中,所述第一信息配置单元,适于获取所述指定软件更新版本的安装程序下载 地址和/或所述指定软件的更新程序下载地址;根据所述指定软件新旧版本的依赖关系确 定所述软件旧版本信息以及对应的更新模式。
[0019] 其中,所述软件安装信息包括通用唯一识别码与软件旧版本信息;所述模式判别 单元,适于根据统一唯一识别码与软件旧版本信息,检索得到对应的更新模式。
[0020] 其中,若所述更新模式为安装所述指定软件的更新程序,则所述信息发送单元,适 于将所述更新模式以及指定软件的更新程序的安装脚本,推送至所述客户端;若所述更新 模式为安装所述指定软件更新版本的安装程序,则所述信息发送单元,适于将所述更新模 式以及指定软件更新版本的安装程序的安装脚本推送至所述客户端。
[0021] 其中,若所述更新模式为安装所述指定软件的更新程序,则所述信息发送单元,进 一步适于将指定软件的更新程序的下载地址推送至所述客户端;若所述更新模式为安装所 述指定软件更新版本的安装程序,则所述信息发送单元,进一步适于将指定软件更新版本 的安装程序的下载地址推送至所述客户端。
[0022] 其中,若所述更新模式为安装所述指定软件的更新程序,则所述信息发送单元,进 一步适于将指定软件的更新程序的MD5值推送至所述客户端;若所述更新模式为安装所述 指定软件更新版本的安装程序,则所述信息发送单元,进一步适于将指定软件更新版本的 安装程序的MD5值推送至所述客户端。
[0023] 根据本发明的另一方面,提供了一种客户端,其中,该客户端包括:信息发送单元, 适于获取与指定软件相关的软件安装信息,并发送至更新服务器;模式接收单元,适于从更 新服务器获取更新模式及更新所需信息;程序获取单元,适于根据更新模式及更新所需信 息获取更新程序或安装程序;程序安装单元,适于根据预设安装模式安装所述更新程序或 安装程序;其中,所述预设安装模式包括:后台自动安装或提示用户手动安装。
[0024] 其中,若所述预设安装模式为后台自动安装,则所述程序安装单元,适于获取预先 配置的指定软件的更新程序的安装脚本或所述指定软件更新版本的安装程序的安装脚本; 以及启动虚拟桌面,调用所述安装脚本进行后台自动安装。
[0025] 其中,若所述预设安装模式为后台自动安装,则所述程序安装单元,适于在进行后 台自动安装之前检测客户端本地系统资源占用率,当系统资源占用率低于预定阈值时启动 后台自动安装。
[0026] 其中,所述程序安装单元,进一步适于在获取更新程序或安装程序之后、安装所述 更新程序或安装程序之前,针对所述更新程序或安装程序进行安全校验。
[0027] 根据本发明的再一方面,提供了一种软件更新系统,所述系统包括如上所述的服 务器,以及至少一个如上所述的客户端。
[0028] 根据本发明的技术方案,可以通过预先获取和保存软件更新信息,以及实时地获 取客户端处的软件安装信息,并且根据软件更新信息和软件安装信息确定软件更新模式, 能够准确和实时地检测到特定软件是否需要更新以及软件需要更新时应采用的软件更新 模式,由此取得了提高软件更新的实时性和准确性的有益效果。
[0029] 上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段, 而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够 更明显易懂,以下特举本发明的【具体实施方式】。

【专利附图】

【附图说明】
[0030] 通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通 技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明 的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
[0031] 图1示出了根据本发明一个实施例的软件更新方法的流程图;
[0032] 图2示出了根据本发明一个实施例的软件更新方法的流程图;
[0033] 图3示出了根据本发明一个实施例的软件更新服务器的框图;以及
[0034] 图4示出了根据本发明一个实施例的客户端的框图。

【具体实施方式】
[0035] 下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开 的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例 所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围 完整的传达给本领域的技术人员。
[0036] 本申请的技术构思主要在于,通过访问软件的官网,获取和保存软件更新信息 (较佳地,能够由软件更新服务器执行这一步骤),例如,通用唯一识别码(Universally Unique Identifier, UUID,起标识作用)、软件官网地址、软件最新版本信息、指定软件更新 版本的安装程序下载地址和/或所述指定软件的更新程序下载地址、软件旧版本信息以及 对应的更新模式、所述指定软件的更新程序的安装脚本和/或所述指定软件更新版本的安 装程序的安装脚本等;进一步地,获取客户端处与指定软件相关的软件安装信息,例如,通 用唯一识别码、软件旧版本信息;通过将软件更新信息和软件安装信息的通用唯一识别码 以及软件旧版本信息进行比较,获取客户端当前版本软件对应的更新模式,例如,是安装指 定软件的更新程序(更新补丁)或者安装指定软件更新版本的安装程序(完整的安装包), 以及更新信息。所以,提高了客户端进行软件更新的实时性和准确性。
[0037] 根据本发明的一个方面,提供了一种软件更新方法。图1示出了根据本发明一 个实施例的软件更新方法的流程图。其中,该方法包括如下的步骤S110、步骤S120、步骤 S130,以及步骤S140,尤其适用于软件更新服务器,也能够适用于安装于客户端的软件更新 专用程序。
[0038] 步骤S110、获取并保存与指定软件相关的软件更新信息。
[0039] 步骤S120、获取客户端处与所述指定软件相关的软件安装信息。
[0040] 步骤S130、根据所述软件更新信息与从客户端处获取的所述软件安装信息确定所 述指定软件的更新模式。其中,更新模式包括安装所述指定软件的更新程序或者安装所述 指定软件更新版本的安装程序。
[0041] 步骤S140、将所述更新模式及更新所需信息推送至所述客户端。通过将更新模式 及更新所需信息推送至客户端,能够令客户端及时准确地更新软件程序。
[0042] 以下更详细地说明本实施例的上述步骤SllO至S140的具体内容。
[0043] 步骤SllO之中,能够通过访问指定软件的官网(例如,游戏软件官网)而获取和 保存与指定软件相关的软件更新信息。本实施例的软件更新信息,包括:通用唯一识别码 (UUID)、软件官网地址(例如,URL)、软件最新版本信息(例如,最新版本号)、所述指定软 件更新版本的安装程序下载地址和/或所述指定软件的更新程序下载地址(例如,URL)、 软件旧版本信息以及对应的更新模式(例如旧版本号和对应的更新模式)、所述指定软件 的更新程序的安装脚本和/或所述指定软件更新版本的安装程序的安装脚本,当然,也能 够是上述安装脚本的下载地址。本实施例之中,通用唯一识别码以及软件官网地址能够通 过事先配置而获得,其余软件更新信息,能够通过访问软件官网并且使用XPath(Xml Path Language,可扩展标记语言路径语言)或正则表达式处理官网的内容而得到。
[0044] 其中,步骤SllO的获取并保存与指定软件相关的软件更新信息至少包括:获取并 保存指定软件更新版本的安装程序下载地址和/或所述指定软件的更新程序下载地址,换 言之,记录更新补丁和/或完整安装包的下载地址;根据指定软件新旧版本的依赖关系确 定并保存所述软件旧版本信息以及对应的更新模式。
[0045] 当然,步骤SllO的获取并保存与指定软件相关的软件更新信息还能够进一步包 括获取并保存软件最新版本信息、指定软件更新版本的安装程序下载地址和/或所述指定 软件的更新程序下载地址,以及指定软件的更新程序的安装脚本和/或所述指定软件更新 版本的安装程序的安装脚本,此处不再赘述。
[0046] 本实施例中,新旧版本的依赖关系能够从软件的官网得到,假设,根据依赖关系分 析得到对于安装旧版本vl. 〇的客户端需要安装指定软件更新版本(假设为v3. 0)的安装 程序,对于安装旧版本v2. 0的客户端需要安装所述指定软件的更新程序(即升级为v3. 0 的补丁),则能够根据依赖关系得到旧版本信息以及对应的更新模式。以下的表(一)示意 性地显示本申请的软件更新信息,表(一)中仅示意性地显示通用唯一识别码、软件最新版 本信息、软件旧版本信息以及对应的更新模式,而省略了其余的软件更信息。
[0047] 表(一)
[0048]

【权利要求】
1. 一种软件更新方法,其中,该方法包括如下步骤: 获取并保存与指定软件相关的软件更新信息; 获取客户端处与所述指定软件相关的软件安装信息; 根据所述软件更新信息与从客户端处获取的所述软件安装信息确定所述指定软件的 更新模式;其中,所述更新模式包括安装所述指定软件的更新程序或者安装所述指定软件 更新版本的安装程序; 将所述更新模式及更新所需信息推送至所述客户端。
2. 根据权利要求1所述的方法,其中,所述与指定软件相关的软件更新信息包括:通用 唯一识别码、软件官网地址、软件最新版本信息、所述指定软件更新版本的安装程序下载地 址和/或所述指定软件的更新程序下载地址、软件旧版本信息以及对应的更新模式、所述 指定软件的更新程序的安装脚本和/或所述指定软件更新版本的安装程序的安装脚本。
3. 根据权利要求2所述的方法,其中,所述获取并保存与指定软件相关的软件更新信 息包括: 获取并保存所述指定软件更新版本的安装程序下载地址和/或所述指定软件的更新 程序下载地址; 根据所述指定软件新旧版本的依赖关系确定并保存所述软件旧版本信息以及对应的 更新模式。
4. 根据权利要求2所述的方法,其中, 所述软件安装信息包括通用唯一识别码与软件旧版本信息; 所述根据所述软件更新信息与从客户端处获取的所述软件安装信息确定所述指定软 件的更新模式,包括:根据统一唯一识别码与软件旧版本信息,检索得到对应的更新模式。
5. 根据权利要求2-4任一项所述的方法,其中, 若所述更新模式为安装所述指定软件的更新程序,则将所述更新模式及更新所需信息 推送至所述客户端,包括:将所述更新模式以及指定软件的更新程序的安装脚本,推送至所 述客户端; 若所述更新模式为安装所述指定软件更新版本的安装程序,则将所述更新模式及更新 所需信息推送至所述客户端,包括:将所述更新模式以及指定软件更新版本的安装程序的 安装脚本推送至所述客户端。
6. 根据权利要求5所述的方法,其中, 若所述更新模式为安装所述指定软件的更新程序,则将所述更新模式及更新所需信息 推送至所述客户端,进一步包括:将指定软件的更新程序的下载地址推送至所述客户端; 若所述更新模式为安装所述指定软件更新版本的安装程序,则将所述更新模式及更新 所需信息推送至所述客户端,进一步包括:将指定软件更新版本的安装程序的下载地址推 送至所述客户端。
7. 根据权利要求5所述的方法,其中, 若所述更新模式为安装所述指定软件的更新程序,则将所述更新模式及更新所需信息 推送至所述客户端,进一步包括:将指定软件的更新程序的MD5值推送至所述客户端; 若所述更新模式为安装所述指定软件更新版本的安装程序,则将所述更新模式及更新 所需信息推送至所述客户端,进一步包括:将指定软件更新版本的安装程序的MD5值推送 至所述客户端。
8. -种软件更新方法,其中,该方法包括如下步骤: 获取与指定软件相关的软件安装信息,并发送至更新服务器; 从更新服务器获取更新模式及更新所需信息; 根据更新模式及更新所需信息获取更新程序或安装程序; 根据预设安装模式安装所述更新程序或安装程序; 所述预设安装模式包括:后台自动安装或提示用户手动安装。
9. 一种软件更新服务器,包括: 第一信息配置单元,适于获取并保存与指定软件相关的软件更新信息; 第二信息配置单元,适于获取客户端处与所述指定软件相关的软件安装信息; 模式判别单元,适于根据所述软件更新信息与从客户端处获取的所述软件安装信息确 定所述指定软件的更新模式;其中,所述更新模式包括安装所述指定软件的更新程序或者 安装所述指定软件更新版本的安装程序; 信息发送单元,适于将所述更新模式及更新所需信息推送至所述客户端。
10. -种客户端,其中,该客户端包括: 信息发送单元,适于获取与指定软件相关的软件安装信息,并发送至更新服务器; 模式接收单元,适于从更新服务器获取更新模式及更新所需信息; 程序获取单元,适于根据更新模式及更新所需信息获取更新程序或安装程序; 程序安装单元,适于根据预设安装模式安装所述更新程序或安装程序;其中,所述预设 安装模式包括:后台自动安装或提示用户手动安装。
【文档编号】H04L29/08GK104239108SQ201410509936
【公开日】2014年12月24日 申请日期:2014年9月28日 优先权日:2014年9月28日
【发明者】张钊 申请人:北京奇虎科技有限公司, 奇智软件(北京)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1