发明内容
本发明主要解决的技术问题是提供一种应用程序维护更新方法和装置,方便应用程序的维护和更新。
为解决上述技术问题,本发明采用的一个技术方案是:提供一种应用程序维护更新的方法,包括步骤:
给应用程序文件加上用于标记该应用程序文件适用平台的文件头;
将上述的多个应用程序文件整合打包生成一个应用程序包;
将所述应用程序包下载至终端设备,解析应用程序包得到应用程序文件列表;
获取终端设备平台信息,判断应用程序文件列表中应用程序文件的文件头是否与终端设备平台信息适配;
将适用于终端设备平台的应用程序文件更新至终端设备。
其中,所述文件头的内容包括用于标记该应用程序文件适用平台的平台类型、用于判断该应用程序文件在终端设备中存储区域的文件类型和用于将该应用程序文件与其他应用程序区分的文件名称。
其中,所述文件头的内容还包括版本号。
其中,在将应用程序文件整合打包步骤中还包括设置应用程序文件更新策略的过程;在将适用于终端设备平台的应用程序文件更新至终端设备之前还包括步骤:
比较该应用程序文件的版本号信息和终端设备中已安装的应用程序的版本号信息,判断是否符合更新策略,在符合更新策略时执行将应用程序文件更新至终端设备的步骤,若不符合更新策略则不执行将应用程序文件更新至终端设备的步骤。
其中,所述文件头的内容还包括校验数据;在将适用于终端设备平台的应用程序文件更新至终端设备之前还包括步骤:
检查该应用程序文件的校验数据是否正常,若正常则执行将应用程序文件更新至终端设备的步骤,若不正常则不执行将应用程序文件更新至终端设备的步骤。
为解决上述技术问题,本发明采用的另一个技术方案是:提供一种应用程序维护装置,包括:
用于给应用程序文件加上用于标记该应用程序文件适用平台的文件头的模块;
用于将上述的多个应用程序文件整合打包生成一个应用程序包的模块。
其中,所述应用程序维护装置还包括用于在将应用程序文件整合打包时设置应用程序文件更新策略的模块。
为解决上述技术问题,本发明采用的另一个技术方案是:提供一种应用程序更新装置,包括:
用于下载应用程序包并解析应用程序包得到应用程序文件列表的模块;
用于获取终端设备平台信息、判断应用程序文件列表中应用程序文件的文件头是否与终端设备平台信息适配的模块;
用于将适用于终端设备平台的应用程序文件更新至终端设备的装置。
其中,所述应用程序更新装置还包括用于比较应用程序包中的应用程序文件版本号信息和终端设备中已安装的应用程序的版本号信息、判断是否符合更新策略,并在不符合时终止应用程序更新的模块。
其中,所述应用程序更新装置还包括用于检查应用程序文件的校验数据是否正常,并在不正常时终止应用程序更新的模块。
本发明的有益效果是:区别于现有技术中应用程序由于适用平台不同需要制作多个应用程序文件,用户更新时需要自己选择适合的文件容易出现选择错误,且现有技术的应用程序文件不能自动识别应用平台信息完成下载,本发明提供一种应用程序维护更新的方法,为每个应用程序文件加上特有的文件头使其与适用的平台信息相关联,而后将应用程序文件打包整合生成一个统一的应用程序包,呈现于用户层面的仅仅只剩下一个独立的应用程序包,不易混淆,不会出现由于人为选择失误造成的更新程序错误,且可以减小应用程序维护的工作量,在更新时,根据应用程序文件的文件头与应用平台的信息自动查找合适的应用程序文件进行更新,根据该自动识别平台下载的机制可以确保更新的准确性,并且不需用户的过多介入,减少了人工干预的不缺定性,提高更新质量和效率。
具体实施方式
为详细说明本发明的技术内容、构造特征、所实现目的及效果,以下结合实施方式并配合附图详予说明。
请参阅图1,本发明提供一种应用程序维护更新的方法,包括步骤:
S10:给应用程序文件加上用于标记该应用程序文件适用平台的文件头;
S20:将上述的多个应用程序文件整合打包生成一个应用程序包;
S30:将所述应用程序包下载至终端设备,解析应用程序包得到应用程序文件列表;
S40:获取终端设备平台信息,判断应用程序文件列表中应用程序文件的文件头是否与终端设备平台信息适配;
S50:将适用于终端设备平台的应用程序文件更新至终端设备;若步骤S40中未查找到适合的应用程序文件,则跳过此步骤,更新结束。
参阅图2,***中存在有三个相同功能的适用于不同平台的应用程序文件,分别是平台一应用程序、平台二应用程序和平台三应用程序,按照本发明上述的维护更新方法,这三个应用程序文件需要打包为一个应用程序包,文件整合模块首先检测待打包的这三个应用程序文件是否符合打包条件,如符合进入待打包列表,如不符合提示文件有误,打包条件根据各个应用的不同而设置,例如可以根据应用程序文件的命名、格式、语言等各个因素来判断;当需要进行打包阶段时(即需要开始对应用程序文件维护时),文件整合模块给三个应用程序文件分别加上特定的文件头,文件头的内容至少包括有平台类型,用于标记该应用程序文件适用平台,而后符合打包条件而进入待打包列表的这三个应用程序文件被整合打包生成一个统一的应用程序包。这样,虽然应用程序包中有三个适用于不同平台的应用程序文件,但对于用户而言,一个功能的应用程序包只有一个,不需再由人工寻找适合的文件。
以上是以相同功能的应用程序文件为例进行具体描述,事实上,打包的文件也可以是不同功能的,同样地,只要在应用程序文件上加上文件头表示其适用平台即可,将相同功能和不同功能的应用程序文件混杂整合在一个应用程序包中与仅有相同功能的应用程序文件整合时整合过程并没有区别,仅仅是整合之前选择文件的不同而已。待打包的应用程序文件可以是由人工选择的,也可以默认为一个文件夹目录下的所有文件。
参阅图3,在用户更新程序时,将应用程序包下载至终端设备中,解析得到应用程序文件的列表,应用程序包可根据终端设备应用平台信息和应用程序文件文件头记载的信息判断列表中的应用程序文件是否与该应用平台适配,当查找到符合条件的应用程序文件后即可自动下载对应的应用程序到设备里完成更新过程。通过这样的平台自动识别下载过程不需用户的过多介入即可自动完成更新过程,减少用户的更新工作。
区别于现有技术中应用程序由于适用平台不同需要制作多个应用程序文件,用户更新时需要自己选择适合的文件容易出现选择错误,且现有技术的应用程序文件不能自动识别应用平台信息完成下载,本发明提供一种应用程序维护更新的方法,为每个应用程序文件加上特有的文件头使其与适用的平台信息相关联,而后将应用程序文件打包整合生成一个统一的应用程序包,呈现于用户层面的仅仅只剩下一个独立的应用程序包,不易混淆,不会出现由于人为选择失误造成的更新程序错误,且可以减小应用程序维护的工作量,在更新时,根据应用程序文件的文件头与应用平台的信息自动查找合适的应用程序文件进行更新,根据该自动识别平台下载的机制可以确保更新的准确性,并且不需用户的过多介入,减少了人工干预的不缺定性,提高更新质量和效率。
文件头的内容除了包括用于标记该应用程序文件适用平台的平台类型外,还可以加入用于判断该应用程序文件在终端设备中存储区域的文件类型和用于将该应用程序文件与其他应用程序区分的文件名称。这样当应用程序文件更新至终端设备时,可以自动选择安装目录。文件名称作为应用程序文件的唯一标记符,可以被认为是应用程序文件的“身份证”,防止终端设备中重复下载。
另外,在文件头中还可以加入版本号标记,用于管理和识别应用程序的升级情况。并且版本号利于更新策略的实施。例如在一实施例中,可以在步骤20对应用程序文件整合打包时设置应用程序文件的更新策略,该更新策略可以是更新(即以高版本的应用程序文件替换终端设备中已安装的低版本文件)、替换(即以当前版本替换终端设备中已安装的文件)和删除(即以当前的空文件替换终端设备中已安装的文件,相当于将已安装的文件删除)。而在步骤S50将适用于终端设备平台的应用程序文件更新至终端设备之前,还包括以下步骤:比较该应用程序文件的版本号信息和终端设备中已安装的应用程序的版本号信息,判断是否符合更新策略,若符合更新策略,则进入步骤S50;若不符合更新策略,则不执行步骤S50,更新结束。
具体地,判断是否符合更新策略可以基于以下基准:当更新策略为“更新”时,判断应用程序包中应用程序文件的版本号是否高于终端设备中已安装文件的版本,若是则表明符合更新策略;当更新策略为“替换”或“删除”时,直接替换。通过这样的过程,可以实现基于用户选择的更新策略,并且可实现以低版本文件替代已安装的高版本文件,解决了目前的程序更新只能实现高版本替换、当需要回复至低版本时只能先卸载再安装过程比较复杂的问题。
在一实施例中,文件头的内容还可以包括校验数据,该校验数据用于验证文件是否被恶意篡改。对应地,在对应用程序进行维护更新时对该校验数据进行检查,具体地,在执行步骤S50将适用于终端设备平台的应用程序文件更新至终端设备之前还包括步骤:检查该应用程序文件的校验数据是否正常,若正常则执行S50步骤,若不正常则不执行S50步骤。通过该校验数据的设置及相关的验证机制提高安全性,防止由于文件被恶意篡改安装后对设备造成病毒性攻击。
在实际应用时,为获得较好的效果,可以设置文件头的内容包括上述提及的可加入文件头中的全部内容,即在一个文件头中同时包含平台类型、文件类型、文件名称、版本号和校验数据。根据一应用实例,在文件头中包含上述所有内容时,需要占用的文件空间不到256字节,占用空间小,容易实现。当然文件头中的内容还可以加入其它的起标识作用的内容,根据实际需要进行扩展即可。在本应用实例中,图3所示的更新流程图中应用程序更新需满足以下条件:1、应用程序包中具有与终端设备平台相适配的应用程序文件;2、与平台适配的该应用程序文件与终端设备中已安装的应用程序版本号比较结果符合事先设置的更新策略,该具体的比对过程上文已具体叙述,此处不再详述;3、应用程序文件的校验数据正常。检查校验数据的过程可以判断应用程序文件平台类型之前或之后或同时进行,只需最终可查找到满足这三个条件的应用程序文件即可认为符合更新条件,将符合更新条件的应用程序文件更新至终端设备;若有一个条件不符合,即认为不符合更新条件,更新终止。
本发明还提供一种应用程序维护装置,包括:
用于给应用程序文件加上用于标记该应用程序文件适用平台的文件头的模块;
用于将上述的多个应用程序文件整合打包生成一个应用程序包的模块。
通过该应用程序维护装置可以将多个应用程序文件整合成为一个应用程序包,方便用户的选择,减小维护工作量。
进一步地,该应用程序维护装置还可以包括用于在将应用程序文件整合打包时设置应用程序文件更新策略的模块。通过该模块可以提供多种可选择的更新方式,满足实际使用需要。
本发明还提供一种应用程序更新装置,包括:
用于下载应用程序包并解析应用程序包得到应用程序文件列表的模块;
用于获取终端设备平台信息、判断应用程序文件列表中应用程序文件的文件头是否与终端设备平台信息适配的模块;
用于将适用于终端设备平台的应用程序文件更新至终端设备的装置。
该装置可以自动将适用于终端设备平台的应用程序文件查找出来进行下载更新,通过这样的平台自动识别下载过程不需用户的过多介入即可自动完成更新过程,减少用户的更新工作
进一步地,该装置还包括:用于比较应用程序包中的应用程序文件版本号信息和终端设备中已安装的应用程序的版本号信息、判断是否符合更新策略,并在不符合时终止应用程序更新的模块。通过该模块实现用户的个性化设置更新策略,例如以高版本文件替换新版本文件或以低版本文件替换高版本文件。
另外,所述应用程序更新装置还可以包括用于检查应用程序文件的校验数据是否正常,并在不正常时终止应用程序更新的模块。该模块可以在应用程序文件设置有校验数据时进行验证,若发现异常则终止应用程序的更新,提高安全性。
以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。