应用升级方法和系统的制作方法

文档序号:6503764阅读:145来源:国知局
应用升级方法和系统的制作方法
【专利摘要】本发明涉及一种应用升级方法和系统。所述方法包括:接收终端上传的应用的版本信息;获取所述应用的最新版本信息,并将所述上传的版本信息与所述最新版本信息进行比较,得到新增的更新信息;下发所述更新信息到所述终端,使终端上的应用根据所述更新信息进行升级。上述应用升级方法和系统,在接收到终端上传的应用的版本信息后,将上传的应用的版本信息和最新版本信息进行比较可得到新增的更新信息,然后下发新增的更新信息给终端,然后由终端根据新增的更新信息进行升级,因仅需对下发新增的更新信息,不需下发整个最新版本信息对应的文件,大大减少了下发的数据量,节省了网络流量。
【专利说明】应用升级方法和系统

【技术领域】
[0001] 本发明涉及软件升级领域,特别是涉及一种应用升级方法和系统。

【背景技术】
[0002] 随着电子产品的普及,各种各样功能的应用被提供在第三方应用市场或网站,用 户可从第三方应用市场或网站上下载安装在终端上。应用随着功能的完善或新功能的增加 产生了新的版本,为此,用户需升级已安装的应用获得新版本的应用。
[0003] 传统的应用升级方式是在用户使用应用时弹出一个版本升级提示框,引导用户去 第三方应用市场或网站下载完整的新版本后安装,从而达到应用版本升级的目的。然而,采 用传统的应用版本的升级方式有两大弊端,一是每次的应用升级都相当于一次全新安装, 需要先把新版本下载到终端上,然后再安装,即使只有少量的应用文件更新,也需要下载整 个的全量新版本文件,耗费大量的网络流量;二是版本的升级更新依赖于第三方应用市场, 需要各种审核流程,从新版本发布到上线第三方应用市场往往需要较长时间,导致新版本 不能及时推送给用户。


【发明内容】

[0004] 基于此,有必要针对传统的应用升级需要下载全量新版本导致耗费大量网络流量 的问题,提供一种能节省网络流量的应用升级方法。
[0005] 此外,还有必要针对传统的应用升级需要下载全量新版本导致耗费大量网络流量 的问题,提供一种能节省网络流量的应用升级系统。
[0006] 一种应用升级方法,包括:
[0007] 接收终端上传的应用的版本信息;
[0008] 获取所述应用的最新版本信息,并将所述上传的版本信息与所述最新版本信息进 行比较,得到新增的更新信息;
[0009] 下发所述更新信息到所述终端,使终端上的应用根据所述更新信息进行升级。
[0010] 在其中一个实施例中,所述将所述上传的版本信息与所述最新版本信息进行比 较,得到新增的更新信息的步骤包括:
[0011] 获取所述上传的版本信息对应的配置文件以及所述最新版本信息对应的配置文 件,并比较两个配置文件,若两个配置文件不同,则将最新版本信息对应的配置文件作为更 新的配置文件;
[0012] 获取所述上传的版本信息对应的安装文件以及所述最新版本信息对应的安装文 件,并比较两个安装文件,得到更新的二进制差异增量安装文件;
[0013] 所述更新信息包括所述更新的配置文件和二进制差异增量安装文件。
[0014] 在其中一个实施例中,在获取所述应用的最新版本信息,并将所述上传的版本信 息与所述最新版本信息进行比较的步骤之后,还包括步骤:
[0015] 若上传的版本信息与所述最新版本信息相同,则得到的更新信息为空,直接结束。
[0016] 在其中一个实施例中,在所述获取所述应用的最新版本信息,并将所述上传的版 本信息与所述最新版本信息进行比较,得到新增的更新信息的步骤之后,还包括:
[0017] 若终端使用无线网络,直接下发所述新增的更新信息到所述终端。
[0018] 在其中一个实施例中,在所述获取所述应用的最新版本信息,并将所述上传的版 本信息与所述最新版本信息进行比较,得到新增的更新信息的步骤之后,还包括:
[0019] 若终端使用移动网络,则下发更新提示信息和新增的更新信息的大小,并显示在 终端上;
[0020] 根据接收的终端的下载请求,下发所述新增的更新信息到所述终端。
[0021] 一种应用升级系统,包括:
[0022] 接收模块,用于接收终端上传的应用的版本信息;
[0023] 比较模块,用于获取所述应用的最新版本信息,并将所述上传的版本信息与所述 最新版本信息进行比较,得到新增的更新信息;
[0024] 下发模块,用于下发所述更新信息到所述终端,使终端上的应用根据所述更新信 息进行升级。
[0025] 在其中一个实施例中,所述比较模块包括:
[0026] 配置文件比较单元,用于获取所述上传的版本信息对应的配置文件以及所述最新 版本信息对应的配置文件,并比较两个配置文件,若两个配置文件不同,则将最新版本信息 对应的配置文件作为更新的配置文件;
[0027] 安装文件比较单元,用于获取所述上传的版本信息对应的安装文件以及所述最新 版本信息对应的安装文件,并比较两个安装文件,得到更新的二进制差异增量安装文件;
[0028] 所述更新信息包括所述更新的配置文件和二进制差异增量安装文件。
[0029] 在其中一个实施例中,所述比较模块还用于在上传的版本信息与所述最新版本信 息相同时,得到的更新信息为空,直接结束。
[0030] 在其中一个实施例中,所述下发模块还用于在终端使用无线网络时,直接下发所 述新增的更新信息到所述终端。
[0031] 在其中一个实施例中,所述下发模块还用于在终端使用移动网络,则下发更新提 示信息和新增的更新信息的大小,以显示在终端上;
[0032] 以及所述下发模块还用于根据接收的终端的下载请求,下发所述新增的更新信息 到所述终端。
[0033] 上述应用升级方法和系统,在接收到终端上传的应用的版本信息后,将上传的应 用的版本信息和最新版本信息进行比较可得到新增的更新信息,然后下发新增的更新信息 给终端,然后由终端根据新增的更新信息进行升级,因仅需对下发新增的更新信息,不需下 发整个最新版本信息对应的文件,大大减少了下发的数据量,节省了网络流量。

【专利附图】

【附图说明】
[0034] 图1为一个实施例中应用升级方法的流程图;
[0035] 图2为一个实施例中得到新增的更新信息的流程图;
[0036] 图3为另一个实施例中应用升级方法的流程图;
[0037] 图4为另一个实施例中应用升级方法的流程图;
[0038] 图5为一个实施例中应用升级系统的结构框图;
[0039] 图6为一个实施例中比较模块的内部结构示意图。

【具体实施方式】
[0040] 下面结合具体的实施例及附图对应用升级方法和系统的技术方案进行详细的描 述,以使其更加清楚。
[0041] 如图1所示,为一个实施例中应用升级方法的流程示意图。该应用升级方法运行 于服务器和终端上。该终端可为智能手机、平板电脑、电子书阅读器、膝上型便携计算机和 台式计算机等等。该应用升级方法,包括:
[0042] 步骤S102,接收终端上传的应用的版本信息。
[0043] 具体的,每个应用由主程序和升级执行文件两个部分组成,用户首次从第三方应 用市场下载并安装某应用在终端上后,升级执行文件以守护进程的方式常驻运行于该终端 上。该守护进程定时检查该应用的新版本和下载安装升级版本,无须再通过第三方应用市 场升级新版本。
[0044] 终端上的守护进程定时向服务器上传应用的版本信息,服务器接收终端上传的应 用的版本信息。该定时可根据需要设定,如每隔12小时、24小时等。该版本信息可为应用 的版本号等,如版本A。
[0045] 步骤S104,获取该应用的最新版本信息,并将该上传的版本信息与该最新版本信 息进行比较,得到新增的更新信息。
[0046] 首先在服务器上保存有应用的每个已发布版本的安装文件和配置信息,即保存有 版本号与版本号对应的安装文件和配置信息的映射关系。
[0047] 当服务器接收终端上传的应用的版本信息后,从保存的映射关系中查找到该应用 的最新版本信息,比较上传的版本信息与最新版本信息,若相同,则更新信息为空,直接结 束,无需对终端上的应用进行升级;若不相同,则可得到新增的更新信息。不同的上传的版 本信息与最新版本信息比较后得到的新增的更新信息不同。
[0048] 该更新信息包括更新的配置文件和二进制差异增量安装文件。如图2所示,为一 个实施例中得到新增的更新信息的流程图,包括:
[0049] 步骤S202,获取上传的版本信息对应的配置文件以及最新版本信息对应的配置文 件,并比较两个配置文件,若两个配置文件不同,则将最新版本信息对应的配置文件作为更 新的配置文件。
[0050] 具体的,比较两个配置文件可采用信息摘要值进行比较,即计算两个配置文件的 信息摘要值,然后比较两个信息摘要值是否相同,若不同,则以将版本信息对应的配置文件 作为更新的配置文件。此外,可预先设置更新列表,将更新的配置文件加入更新列表中。该 配置文件为非可执行文件,如文本、图片、音频等文件。
[0051] 步骤S204,获取上传的版本信息对应的安装文件以及最新版本信息对应的安装文 件,并比较两个安装文件,得到更新的二进制差异增量安装文件。
[0052] 具体的,采用BSDIFF算法将比较得到的新增的安装文件生成二进制差异增量安 装文件。BSDIFF算法是用于修补二进制程序的工具,可产生很小的二进制修补程序。该二 进制差异增量安装文件的大小远小于最新版本信息对应的安装文件大小,在网络下载过程 中可节省大量的网络流量。
[0053] 步骤S106,下发该更新信息到该终端,使终端上的应用根据该更新信息进行升级。
[0054] 具体的通过 HTTP (Hypertext transfer protocol,超文本传输协议)、FTP (File transfer protocol,文件传输协议)等协议下发新增的更新信息。终端接收下发的更新信 息后,先终止终端上的应用除守护进程外的其他进程,然后用新增的更新的安装文件覆盖 旧的安装文件,然后由守护进程重新将安装过程中终止的进程重新启动。
[0055] 上述应用升级方法,在接收到终端上传的应用的版本信息后,将上传的应用的版 本信息和最新版本信息进行比较可得到新增的更新信息,然后下发新增的更新信息给终 端,然后由终端根据新增的更新信息进行升级,因仅需对下发新增的更新信息,不需下发整 个最新版本信息对应的文件,大大减少了下发的数据量,节省了网络流量。
[0056] 如图3所示,为另一个实施例中应用升级方法的流程图。图3中的应用升级方法 与图1中的应用升级方法的区别在于:在终端使用无线网络时,才直接下发更新信息。该应 用升级方法包括:
[0057] 步骤S302,接收终端上传的应用的版本信息。
[0058] 该版本信息可为应用的版本号等,如版本A。
[0059] 步骤S304,获取该应用的最新版本信息,并将该上传的版本信息与该最新版本信 息进行比较,得到新增的更新信息。
[0060] 该更新信息包括更新的配置文件和二进制差异增量安装文件。
[0061] 步骤S306,若终端使用无线网络,直接下发该新增的更新信息到该终端。
[0062] 具体的,终端使用无线网络,如WIFI网络,服务器直接下发新增的更新信息到终 端上,即终端直接静默检查应用升级并下载新增的更新信息,不需用户去触发选择是否进 行下载。
[0063] 上述应用升级方法,通过在终端使用无线网络直接下发新增的更新信息,仅需对 下发新增的更新信息,不需下发整个最新版本信息对应的文件,大大减少了下发的数据量, 节省了网络流量,且不需用户去触发升级操作,减少了操作次数,降低了硬件损耗。
[0064] 如图4所示,为另一个实施例中应用升级方法的流程图。图4中的应用升级方法 与图1中的应用升级方法的区别在于:在终端使用移动网络时,需根据用户的操作确定是 否下发更新信息。该应用升级方法包括:
[0065] 步骤S402,接收终端上传的应用的版本信息。
[0066] 该版本信息可为应用的版本号等,如版本A。
[0067] 步骤S404,获取该应用的最新版本信息,并将该上传的版本信息与该最新版本信 息进行比较,得到新增的更新信息。
[0068] 该更新信息包括更新的配置文件和二进制差异增量安装文件。
[0069] 步骤S406,若终端使用移动网络,则下发更新提示信息和新增的更新信息的大小, 并显示在终端上。
[0070] 该更新提示信息可包括新功能的介绍、更新标示等。更新标示可用文字、图片等表 示。新增的更新信息的大小如为1MB (兆比特)等。
[0071] 步骤S408,根据接收的终端的下载请求,下发该新增的更新信息到该终端。
[0072] 具体的,在终端上显示更新提示信息和更新信息的大小后,用户通过触摸屏、按键 等输入设备在终端上选择下载后,服务器接收到终端的下载请求,下发该新增的更新信息 到终端。若用户在终端上选择不下载时,终端不会从服务器下载更新信息。
[0073] 上述应用升级方法,通过在终端使用移动网络需根据用户的操作确定是否下发新 增的更新信息,操作更灵活。
[0074] 如图5所示,为一个实施例中应用升级系统的结构框图。该应用升级系统为运行 于服务器上的程序,将其按照程序执行流程划分为多个功能模块。该应用升级系统,包括接 收模块520、比较模块540和下发模块560。其中:
[0075] 接收模块520用于接收终端上传的应用的版本信息。
[0076] 具体的,每个应用由主程序和升级执行文件两个部分组成,用户首次从第三方应 用市场下载并安装某应用在终端上后,升级执行文件以守护进程的方式常驻运行于该终端 上。该守护进程定时检查该应用的新版本和下载安装升级版本,无须再通过第三方应用市 场升级新版本。
[0077] 终端上的守护进程定时向服务器上传应用的版本信息,服务器接收终端上传的应 用的版本信息。该定时可根据需要设定,如每隔12小时、24小时等。该版本信息可为应用 的版本号等,如版本A。
[0078] 比较模块540用于获取该应用的最新版本信息,并将该上传的版本信息与该最新 版本信息进行比较,得到新增的更新信息。
[0079] 首先在服务器上保存有应用的每个已发布版本的安装文件和配置信息,即保存有 版本号与版本号对应的安装文件和配置信息的映射关系。
[0080] 当服务器接收终端上传的应用的版本信息后,从保存的映射关系中查找到该应用 的最新版本信息,比较模块540比较上传的版本信息与最新版本信息,若相同,则更新信息 为空,直接结束,无需对终端上的应用进行升级;若不相同,则可得到新增的更新信息。不同 的上传的版本信息与最新版本信息比较后得到的新增的更新信息不同。
[0081] 该更新信息包括更新的配置文件和二进制差异增量安装文件。
[0082] 进一步的,在一个实施例中,如图6所示,为比较模块540的内部结构示意图。比 较模块540包括配置文件比较单元542和安装文件比较单元544。
[0083] 配置文件比较单元542用于获取上传的版本信息对应的配置文件以及最新版本 信息对应的配置文件,并比较两个配置文件,若两个配置文件不同,则将最新版本信息对应 的配置文件作为更新的配置文件。
[0084] 具体的,比较两个配置文件可采用信息摘要值进行比较,即计算两个配置文件的 信息摘要值,然后比较两个信息摘要值是否相同,若不同,则以将版本信息对应的配置文件 作为更新的配置文件。此外,可预先设置更新列表,将更新的配置文件加入更新列表中。该 配置文件为非可执行文件,如文本、图片、音频等文件。
[0085] 安装文件比较单元544用于获取上传的版本信息对应的安装文件以及最新版本 信息对应的安装文件,并比较两个安装文件,得到更新的二进制差异增量安装文件。
[0086] 具体的,采用BSDIFF算法将比较得到的新增的安装文件生成二进制差异增量安 装文件。BSDIFF算法是用于修补二进制程序的工具,可产生很小的二进制修补程序。该二 进制差异增量安装文件的大小远小于最新版本信息对应的安装文件大小,在网络下载过程 中可节省大量的网络流量。
[0087] 下发模块560用于下发该更新信息到该终端,使终端上的应用根据该更新信息进 行升级。
[0088] 具体的通过 HTTP (Hypertext transfer protocol,超文本传输协议)、FTP (File transfer protocol,文件传输协议)等协议下发新增的更新信息。终端接收下发的更新信 息后,先终止终端上的应用除守护进程外的其他进程,然后用新增的更新的安装文件覆盖 旧的安装文件,然后由守护进程重新将安装过程中终止的进程重新启动。
[0089] 上述应用升级系统,在接收到终端上传的应用的版本信息后,将上传的应用的版 本信息和最新版本信息进行比较可得到新增的更新信息,然后下发新增的更新信息给终 端,然后由终端根据新增的更新信息进行升级,因仅需对下发新增的更新信息,不需下发整 个最新版本信息对应的文件,大大减少了下发的数据量,节省了网络流量。
[0090] 进一步的,下发模块560还用于在终端使用无线网络时,直接下发该新增的更新 信息到该终端。
[0091] 具体的,终端使用无线网络,如WIFI网络,服务器直接下发新增的更新信息到终 端上,即终端直接静默检查应用升级并下载新增的更新信息,不需用户去触发选择是否进 行下载。因不需用户去触发升级操作,减少了操作次数,降低了硬件损耗。
[0092] 进一步的,在一个实施例中,下发模块560还用于在终端使用移动网络,则下发更 新提示信息和新增的更新信息的大小,以显示在终端上。其中,该更新提示信息可包括新功 能的介绍、更新标示等。更新标示可用文字、图片等表示。新增的更新信息的大小如为1MB (兆比特)等。
[0093] 下发模块560还用于根据接收的终端的下载请求,下发该新增的更新信息到所述 终端。
[0094] 具体的,在终端上显示更新提示信息和更新信息的大小后,用户通过触摸屏、按键 等输入设备在终端上选择下载后,服务器接收到终端的下载请求,下发该新增的更新信息 到终端。若用户在终端上选择不下载时,终端不会从服务器下载更新信息。通过在终端使 用移动网络需根据用户的操作确定是否下发新增的更新信息,操作更灵活。
[0095] 本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以 通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质 中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁 碟、光盘、只读存储记忆体(Read-Only Memory, ROM)或随机存储记忆体(Random Access Memory,RAM)等。
[0096] 以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并 不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员 来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保 护范围。因此,本发明专利的保护范围应以所附权利要求为准。
【权利要求】
1. 一种应用升级方法,包括: 接收终端上传的应用的版本信息; 获取所述应用的最新版本信息,并将所述上传的版本信息与所述最新版本信息进行比 较,得到新增的更新信息; 下发所述更新信息到所述终端,使终端上的应用根据所述更新信息进行升级。
2. 根据权利要求1所述的方法,其特征在于,所述将所述上传的版本信息与所述最新 版本信息进行比较,得到新增的更新信息的步骤包括: 获取所述上传的版本信息对应的配置文件以及所述最新版本信息对应的配置文件,并 比较两个配置文件,若两个配置文件不同,则将最新版本信息对应的配置文件作为更新的 配置文件; 获取所述上传的版本信息对应的安装文件以及所述最新版本信息对应的安装文件,并 比较两个安装文件,得到更新的二进制差异增量安装文件; 所述更新信息包括所述更新的配置文件和二进制差异增量安装文件。
3. 根据权利要求1所述的方法,其特征在于,在获取所述应用的最新版本信息,并将所 述上传的版本信息与所述最新版本信息进行比较的步骤之后,还包括步骤: 若上传的版本信息与所述最新版本信息相同,则得到的更新信息为空,直接结束。
4. 根据权利要求1所述的方法,其特征在于,在所述获取所述应用的最新版本信息,并 将所述上传的版本信息与所述最新版本信息进行比较,得到新增的更新信息的步骤之后, 还包括: 若终端使用无线网络,直接下发所述新增的更新信息到所述终端。
5. 根据权利要求1所述的方法,其特征在于,在所述获取所述应用的最新版本信息,并 将所述上传的版本信息与所述最新版本信息进行比较,得到新增的更新信息的步骤之后, 还包括: 若终端使用移动网络,则下发更新提示信息和新增的更新信息的大小,并显示在终端 上; 根据接收的终端的下载请求,下发所述新增的更新信息到所述终端。
6. -种应用升级系统,其特征在于,包括: 接收模块,用于接收终端上传的应用的版本信息; 比较模块,用于获取所述应用的最新版本信息,并将所述上传的版本信息与所述最新 版本信息进行比较,得到新增的更新信息; 下发模块,用于下发所述更新信息到所述终端,使终端上的应用根据所述更新信息进 行升级。
7. 根据权利要求6所述的系统,其特征在于,所述比较模块包括: 配置文件比较单元,用于获取所述上传的版本信息对应的配置文件以及所述最新版本 信息对应的配置文件,并比较两个配置文件,若两个配置文件不同,则将最新版本信息对应 的配置文件作为更新的配置文件; 安装文件比较单元,用于获取所述上传的版本信息对应的安装文件以及所述最新版本 信息对应的安装文件,并比较两个安装文件,得到更新的二进制差异增量安装文件; 所述更新信息包括所述更新的配置文件和二进制差异增量安装文件。
8. 根据权利要求6所述的系统,其特征在于,所述比较模块还用于在上传的版本信息 与所述最新版本信息相同时,得到的更新信息为空,直接结束。
9. 根据权利要求6所述的系统,其特征在于,所述下发模块还用于在终端使用无线网 络时,直接下发所述新增的更新信息到所述终端。
10. 根据权利要求6所述的系统,其特征在于,所述下发模块还用于在终端使用移动网 络,则下发更新提示信息和新增的更新信息的大小,以显示在终端上; 以及所述下发模块还用于根据接收的终端的下载请求,下发所述新增的更新信息到所 述终立而。
【文档编号】G06F9/445GK104216727SQ201310219154
【公开日】2014年12月17日 申请日期:2013年6月4日 优先权日:2013年6月4日
【发明者】陈晓波, 易薇, 李斌 申请人:腾讯科技(深圳)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1