CN103685495B - 软件的升级方法和*** - Google Patents
软件的升级方法和*** Download PDFInfo
- Publication number
- CN103685495B CN103685495B CN201310656113.2A CN201310656113A CN103685495B CN 103685495 B CN103685495 B CN 103685495B CN 201310656113 A CN201310656113 A CN 201310656113A CN 103685495 B CN103685495 B CN 103685495B
- Authority
- CN
- China
- Prior art keywords
- software
- subdirectory
- data
- upgraded
- directory information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Landscapes
- Stored Programmes (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明涉及一种软件的升级方法和***,在接收到升级请求时,获取终端发送的待升级软件与新版本软件之前的差异目录,将获取到的差异目录发送给服务器,仅仅根据该差异目录下载待升级软件中需要更新的数据,而不用下载新版本软件的所有数据,节省终端的流量。
Description
技术领域
本发明涉及软件升级技术领域,尤其涉及一种软件的升级方法和***。
背景技术
当产品出现软件上的缺陷时,用户可通过对软件升级来解决其技术缺陷。现有技术中,对软件进行升级的技术方案通常为:搭载该软件的终端向服务器发送升级请求,服务器在接收到升级请求时将新版本软件下发给终端,终端删除存储的旧版本软件,并将新版本软件写入终端的内存中,在升级时每次均需要从服务器下载大量的软件数据,浪费终端的流量。
发明内容
本发明的主要目的是提供一种软件的升级方法和***,以较少终端在升级时的流量。
本发明提出一种软件的升级方法,包括:
接收到待升级软件的升级请求时,获取终端待升级软件的目录信息以及新版本软件的目录信息,所述目录信息包括子目录信息;
比对获取到的待升级软件的目录信息以及新版本软件的目录信息,确定新版本软件与待升级软件中的差别子目录;
将确定的差别子目录发送至服务器,并从服务器获取所述确定的差别子目录对应的新版本软件更新数据;
在接收到服务器发送的所述更新数据时,将所述更新数据更新入所述差别子目录所对应的存储路径中,以供终端升级所述待升级软件。
优选地,在接收到服务器发送的所述更新数据时,将所述更新数据更新入所述差别子目录所对应的存储路径中,以供终端升级所述待升级软件的步骤之后,该方法包括:
根据接收到的所述更新数据更新保存的待升级软件数据,同时采用新版本软件数据的目录信息更新所述待升级软件的目录信息。
优选地,该方法还包括:
接收到软件的安装请求时,判断是否存储有所述软件的数据;
若存储有所述软件的数据,则调用存储的所述软件的数据安装所述软件;
若未存储所述软件的数据,则向所述服务器发送数据获取指令;
在接收到服务器反馈的软件数据时,根据所述软件数据安装所述软件。
优选地,所述接收到待升级软件的升级请求时,获取终端待升级软件的目录信息以及新版本软件的目录信息的步骤包括:
根据接收到的升级请求获取新版本软件的版本号,并将该版本号发送给服务器,以供服务器根据接收到版本号确定新版本软件的目录信息;
在接收到服务器下发的新版本软件的目录信息时,获取终端待升级软件的目录信息。
本发明还提出一种软件升级方法,包括:
接收终端发送的到待升级软件的升级请求时,获取终端待升级软件的目录信息以及新版本软件的目录信息,所述目录信息包括子目录信息;
比对获取到的待升级软件的目录信息以及新版本软件的目录信息,确定新版本软件与待升级软件中的差别子目录;
根据确定的差别子目录获取所述确定的差别子目录对应的新版本软件更新数据;
将所述更新数据发送给终端,以供终端将所述更新数据更新入所述差别子目录所对应的存储路径中,以升级所述待升级软件。
本发明还提出一种软件的升级***,包括:
第一获取模块,用于接收到待升级软件的升级请求时,获取终端待升级软件的目录信息以及新版本软件的目录信息,所述目录信息包括子目录信息;
第一确定模块,用于比对获取到的待升级软件的目录信息以及新版本软件的目录信息,确定新版本软件与待升级软件中的差别子目录;
第一发送模块,用于将确定的差别子目录发送至服务器,并从服务器获取所述确定的差别子目录对应的新版本软件更新数据;
升级模块,用于在接收到服务器发送的所述更新数据时,将所述更新数据更新入所述差别子目录所对应的存储路径中,以供终端升级所述待升级软件。
优选地,该***还包括更新模块,用于根据接收到的所述更新数据更新保存的待升级软件数据,同时采用新版本软件数据的目录信息更新所述待升级软件的目录信息。
优选地,该***还包括判断模块以及软件安装模块,所述判断模块用于接收到软件的安装请求时,判断是否存储有所述软件的数据;所述软件安装模块,用于若存储有所述软件的数据,则调用存储的所述软件的数据安装所述软件;所述第一发送模块还用于若未存储所述软件的数据,则向所述服务器发送数据获取指令;所述软件安装模块还用于在接收到服务器反馈的软件数据时,根据所述软件数据安装所述软件。
优选地,所述第一获取模块还用于根据接收到的升级请求获取新版本软件的版本号;所述第一发送模块还用于将所述获取模块获取到的版本号发送给服务器,以供服务器根据接收到版本号确定新版本软件的目录信息;所第一述获取模块还用于在接收到服务器下发的新版本软件的目录信息时,获取终端待升级软件的目录信息。
本发明还提出一种软件的升级***,包括:
接收终端发送的到待升级软件的升级请求时,获取终端待升级软件的目录信息以及新版本软件的目录信息,所述目录信息包括子目录信息;
比对获取到的待升级软件的目录信息以及新版本软件的目录信息,确定新版本软件与待升级软件中的差别子目录;
根据确定的差别子目录获取所述确定的差别子目录对应的新版本软件更新数据;
将所述更新数据发送给终端,以供终端将所述更新数据更新入所述差别子目录所对应的存储路径中,以升级所述待升级软件。
本发明提出的软件的升级方法和***,在接收到升级请求时,获取终端发送的待升级软件与新版本软件之前的差异目录,将获取到的差异目录发送给服务器,仅仅根据该差异目录下载待升级软件中需要更新的数据,而不用下载新版本软件的所有数据,节省终端的流量。
附图说明
图1为本发明软件升级方法第一实施例的流程示意图;
图2提出本发明软件升级方法第二实施例的流程示意图;
图3为本发明软件升级方法第三实施例的流程示意图;
图4为图1中步骤S10的较佳实施例的流程示意图;
图5为本发明软件升级方法第四实施例的流程示意图;
图6为本发明软件升级***第一实施例的功能模块示意图;
图7为本发明软件升级***第二实施例的功能模块示意图;
图8为本发明软件升级***第三实施例的功能模块示意图;
图9为本发明软件升级***第四实施例的功能模块示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
下面结合附图及具体实施例就本发明的技术方案做进一步的说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
参照图1,图1为本发明软件升级方法第一实施例的流程示意图。
本实施例提出一种软件升级方法,包括:
步骤S10,接收到待升级软件的升级请求时,获取终端待升级软件的目录信息以及新版本软件的目录信息,所述目录信息包括子目录信息;
在本实施例中,由于与终端安装的待升级软件数据同步,在接收到升级请求时可直接调用预先存储的待升级软件的目录信息;或者终端可将待升级软件的目录信息封装在升级请求中,在接收到升级请求时,对该升级请求进行解码以获取升级请求中的待升级软件的目录信息;或者终端将待升级软件的版本号封装在升级请求中,在接收到在接收到升级请求时,对该升级请求进行解码以获取升级请求中的待升级软件的版本号,将获取到的版本号发送给服务器以获取待升级软件的目录信息。在获取待升级软件的目录的信息的同时,向服务器发送新版本软件目录信息的获取请求,并接收服务器下发的新版本软件的目录信息,在本实施例中,目录信息包括子目录信息,子目录信息包括子目录中文件的修改日期及或子目录中文件的大小。
在本实施例中终端在开机时,或者在用户通过按键或其它装置触发升级请求时,可向服务器获取软件的最新版本信息(如版本号),将获取到的版本信息与保存的软件的版本信息进行比对,以确定当前保存的软件是否为最新版本,若当前保存的软件不是最新版本,则提示用户是否进行升级,在接收到用户的确认信息时,触发升级请求。
步骤S20,比对获取到的待升级软件的目录信息以及新版本软件的目录信息,确定新版本软件与待升级软件中的差别子目录;
步骤S30,将确定的差别子目录发送至服务器,并从服务器获取所述确定的差别子目录对应的新版本软件更新数据;
在本实施例中,目录信息包括子目录信息,子目录信息包括子目录中文件的修改日期及或子目录中文件的大小,可根据子目录中文件的修改日期及或子目录中文件的大小确定差别子目录。每个版本软件的软件数据均对应设置有目录,建立软件数据与子目录之间的映射关系并保存在服务器,每个子目录均对应有相应的软件数据,以及子目录的目录信息,服务器在更新软件时,在旧版本软件的数据的基础上进行更新,更新某个子目录的文件之后,可更改该子目录对应的目录信息如更改时间以及文件大小。
将获取到的待升级软件的目录信息以及新版本软件的子目录信息依次进行比对时,例如,当子目录信息中有多个一级子目录,每个一级子目录对应多个二级子目录,此时依次比对每个一级子目录中的二级子目录中的文件大小以及修改日期,当有二级子目录的文件大小及或修改日期不同时,将该子目录作为差别子目录,并继续比对其它二级子目录的文件大小或者修改日期,在比对完该一级子目录的所有二级子目录时,比对下一个一级目录直至比对完所有的一级目录,将记录的差别子目录发送给服务器,服务器根据预存的目录的软件数据的映射关系,获取新版本软件数据中差别子目录所对应的软件数据(即更新数据),并将获取到的更新数据下发给终端。在比对待升级软件的目录信息以及新版本软件的目录信息时,优选方案为同时比对子目录的修改时间以及大小,以使待升级软件的目录信息以及新版本软件的目录信息的比对结果更加精确。
步骤S40,在接收到服务器发送的所述更新数据时,将所述更新数据更新入所述差别子目录所对应的存储路径中,以供终端升级所述待升级软件。
在接收到服务器发送更新数据时,将获取到的更新数据写入差别子目录所对应的存储路径所对应的存储路径中,并提供调用接口,以供终端调用所述更新数据进行待升级软件的升级,该方案不用将数据存储在终端的文件中。
在本实施例中将所述更新数据更新入所述差别子目录所对应的存储路径中有三种情况:A、新版本软件与旧版本软件的子目录的数量相同,直接采用更新数据更新差别子目录中的数据;B、新版本软件子目录的数量大于旧版本软件子目录的数量,则差别子目录可能为多余出来的数据,此时直接采用新版本软件的目录替换旧版本软件的目录,同时将更新数据写入差别子目录所对应的存储路径;C、新版本软件子目录的数量小于旧版本软件子目录的数量,则差别子目录可能为删除的数据,此时直接删除差别子目录。
本实施例提出的软件的升级方法和***,在接收到升级请求时,获取终端发送的待升级软件与新版本软件之前的差异目录,将获取到的差异目录发送给服务器,仅仅根据该差异目录下载待升级软件中需要更新的数据,而不用下载新版本软件的所有数据,节省终端的流量。
参照图2,图2提出本发明软件升级方法第二实施例的流程示意图。
基于第一实施例提出本发明软件升级方法第二实施例,在本实施例中步骤S40之后,该方法包括:
步骤S50,根据接收到的所述更新数据更新保存的待升级软件数据,同时采用新版本软件数据的目录信息更新所述待升级软件的目录信息。
在本实施例中在完成软件的升级后,可采用新版本软件数据的目录信息更新待升级软件的目录信息,以便于终端的软件下次在进行升级时,直接获取终端当前安装软件的目录信息,使得终端软件的升级速率更高,同时采用接收到的更新数据更新保存的待升级软件数据,使得终端在卸载软件后,可直接更具保存的软件数据直接安装软件,而不用重新由服务器器下载软件,节省终端流量,该软件数据可在终端卸载软件后手动删除,或者在终端卸载软件后预设的时间间隔自动删除。
参照图3,图3为本发明软件升级方法第三实施例的流程示意图。
基于第一和第二实施例提出本发明软件升级方法第三实施例,在本实施例中该方法还包括:
步骤S60,接收到软件的安装请求时,判断是否存储有所述软件的数据;
步骤S70,若存储有所述软件的数据,则调用存储的所述软件的数据安装所述软件;
步骤S80,若未存储所述软件的数据,则向所述服务器发送数据获取指令;
步骤S90,在接收到服务器反馈的软件数据时,根据所述软件数据安装所述软件。
接收到软件安装请求时,首先判断是否存储有软件数据,当存储有软件数据时,直接调用存储的软件数据安装该软件,以节省终端的流量,在安装时将该软件数据写入***盘中;若未存储软件数据,则向所述服务器发送数据获取指令,在接收到服务器反馈的软件数据时,根据所述软件数据安装所述软件,在安装该软件的同时可存储该软件数据,以便于在软件卸载后根据该软件数据重新安装软件;在本实施例中,服务器在向终端下发软件数据的同时会下发软件的目录以及对应的目录信息,以便在升级时通过待升级软件的目录信息以及新版本软件的目录信息,确定新版本软件以及待升级软件的差别子目录。
参照图4,图4为图1中步骤S10的较佳实施例的流程示意图。
在第一实施例和第二实施例中,步骤S10包括:
步骤S11,根据接收到的升级请求获取新版本软件的版本号,并将该版本号发送给服务器,以供服务器根据接收到版本号确定新版本软件的目录信息;
步骤S12,在接收到服务器下发的新版本软件的目录信息时,获取终端待升级软件的目录信息。
当终端当前搭载的软件不是最新版本时,且当前搭载的软件的版本号与最新版本软件的版本号不相邻时,可向用户推送提示信息,以提示用户选择升级至哪个版本,接收到用户的选择信息时,确定用户选择的软件版本号,此时触发的包含新版本软件的版本号的升级请求,在接收到该升级请求时,解码改升级请求并将解码后获取到的版本号发送给服务器,以获取对应该版本软件的目录信息,比对获取到的新版本软件的目录信息以及待升级软件的额目录信息,以确定差异子目录,将差异子目录发送至服务器以获取对应的更新数据,此方案具有选择性,当终端在兼容问题时,不强制用户升级到最新版本的软件,以减少升级后出现的问题。
参照图5,图5为本发明软件升级方法第四实施例的流程示意图。
本实施例提出一种软件升级方法,包括:
步骤S100,接收到终端发送的待升级软件的升级请求时,获取终端待升级软件的目录信息以及新版本软件的目录信息,所述目录信息包括子目录信息;
本实施例中的执行主体为服务器,可将终端待升级软件的版本号封装在升级请求中,服务器在接收到终端发送的到待升级软件的升级请求时,解码该升级请求以获取待升级软件的版本号,根据预设的软件版本号与软件目录信息的映射关系,确定待升级软件的版本号所对应的目录信息,同时获取最新版本软件的目录信息。在本实施例中,目录信息包括子目录信息,子目录信息包括子目录中文件的修改日期及或子目录中文件的大小。
步骤S110,比对获取到的待升级软件的目录信息以及新版本软件的目录信息,确定新版本软件与待升级软件中的差别子目录;
在本实施例中,目录信息包括子目录信息,子目录信息包括子目录中文件的修改日期及或子目录中文件的大小,可根据子目录中文件的修改日期及或子目录中文件的大小确定差别子目录。每个版本软件的软件数据均对应设置有目录,建立软件数据与子目录之间的映射关系并保存在服务器,每个子目录均对应有相应的软件数据,以及子目录的目录信息,服务器在更新软件时,在旧版本软件的数据的基础上进行更新,更新某个子目录的文件之后,可更改该子目录对应的目录信息如更改时间以及文件大小。
将获取到的待升级软件的目录信息以及新版本软件的子目录信息依次进行比对时,例如,当子目录信息中有多个一级子目录,每个一级子目录对应多个二级子目录,此时依次比对每个一级子目录中的二级子目录中的文件大小以及修改日期,当有二级子目录的文件大小及或修改日期不同时,将该子目录作为差别子目录,并继续比对其它二级子目录的文件大小或者修改日期,在比对完该一级子目录的所有二级子目录时,比对下一个一级目录直至比对完所有的一级目录,将记录的差别子目录发送给服务器,服务器根据预存的目录的软件数据的映射关系,获取新版本软件数据中差别子目录所对应的软件数据(即更新数据),并将获取到的更新数据下发给终端。在比对待升级软件的目录信息以及新版本软件的目录信息时,优选方案为同时比对子目录的修改时间以及大小,以使待升级软件的目录信息以及新版本软件的目录信息的比对结果更加精确。
步骤S120,根据确定的差别子目录获取所述确定的差别子目录对应的新版本软件更新数据;
服务器预存有子目录与软件数据的映射关系,在确定了待升级软件与新版本软件的差别子目录后,根据子目录与软件数据的映射关系获取差别子目录所对应的更新数据。
步骤S130,将所述更新数据发送给终端,以供终端将所述更新数据更新入所述差别子目录所对应的存储路径中,以升级所述待升级软件。
在接收到服务器发送更新数据时,终端将获取到的更新数据写入差别子目录所对应的存储路径所对应的存储路径中,以供终端进行待升级软件的升级。在本实施例中将所述更新数据更新入所述差别子目录所对应的存储路径中有三种情况:A、新版本软件与旧版本软件的子目录的数量相同,直接采用更新数据更新差别子目录中的数据;B、新版本软件子目录的数量大于旧版本软件子目录的数量,则差别子目录可能为多余出来的数据,此时直接采用新版本软件的目录替换旧版本软件的目录,同时将更新数据写入差别子目录所对应的存储路径;C、新版本软件子目录的数量小于旧版本软件子目录的数量,则差别子目录可能为删除的数据,此时直接删除差别子目录。
本实施例提出的软件的升级方法,在接收到升级请求时,获取终端发送的待升级软件与新版本软件之前的差异目录,将获取到的差异目录发送给服务器,仅仅根据该差异目录下载待升级软件中需要更新的数据,而不用下载新版本软件的所有数据,节省终端的流量。
参照图6,图6为本发明软件升级***第一实施例的功能模块示意图。
本实施例提出一种软件升级***,包括:
第一获取模块10,用于接收到待升级软件的升级请求时,获取终端待升级软件的目录信息以及新版本软件的目录信息,所述目录信息包括子目录信息;
在本实施例中,由于与终端安装的待升级软件数据同步,在接收到升级请求时可直接调用预先存储的待升级软件的目录信息;或者终端可将待升级软件的目录信息封装在升级请求中,在接收到升级请求时,对该升级请求进行解码以获取升级请求中的待升级软件的目录信息;或者终端将待升级软件的版本号封装在升级请求中,在接收到在接收到升级请求时,对该升级请求进行解码以获取升级请求中的待升级软件的版本号,将获取到的版本号发送给服务器以获取待升级软件的目录信息。在获取待升级软件的目录的信息的同时,向服务器发送新版本软件目录信息的获取请求,并接收服务器下发的新版本软件的目录信息,在本实施例中,目录信息包括目录中文件的修改日期及或目录中文件的大小。
在本实施例中终端在开机时,或者在用户通过按键或其它装置触发升级请求时,可向服务器获取软件的最新版本信息(如版本号),将获取到的版本信息与保存的软件的版本信息进行比对,以确定当前保存的软件是否为最新版本,若当前保存的软件不是最新版本,则提示用户是否进行升级,在接收到用户的确认信息时,触发升级请求。
第一确定模块20,用于比对获取到的待升级软件的目录信息以及新版本软件的目录信息,确定新版本软件与待升级软件中的差别子目录;
第一发送模块30,用于将确定的差别子目录发送至服务器,并从服务器获取所述确定的差别子目录对应的新版本软件更新数据;
在本实施例中,目录信息包括目录中文件的修改日期及/或目录中文件的大小,可根据子目录中文件的修改日期及或子目录中文件的大小确定差别子目录。每个版本软件的软件数据均对应设置有目录,建立软件数据与子目录之间的映射关系并保存在服务器,每个子目录均对应有相应的软件数据,以及子目录的目录信息,服务器在更新软件时,在旧版本软件的数据的基础上进行更新,更新某个子目录的文件之后,可更改该子目录对应的目录信息如更改时间以及文件大小。
将获取到的待升级软件的目录信息以及新版本软件的目录信息依次进行比对时,例如,当目录信息中有多个一级子目录,每个一级子目录对应多个二级子目录,此时依次比对每个一级子目录中的二级子目录中的文件大小以及修改日期,当有二级子目录的文件大小及或修改日期不同时,将该子目录作为差别子目录,并继续比对其它二级子目录的文件大小或者修改日期,在比对完该一级子目录的所有二级子目录时,比对下一个一级目录直至比对完所有的一级目录,将记录的差别子目录发送给服务器,服务器根据预存的目录的软件数据的映射关系,获取新版本软件数据中差别子目录所对应的软件数据(即更新数据),并将获取到的更新数据下发给终端。在比对待升级软件的目录信息以及新版本软件的目录信息时,优选方案为同时比对子目录的修改时间以及大小,以使待升级软件的目录信息以及新版本软件的目录信息的比对结果更加精确。
升级模块40,用于在接收到服务器发送的所述更新数据时,将所述更新数据更新入所述差别子目录所对应的存储路径中,以供终端升级所述待升级软件。
在接收到服务器发送更新数据时,将获取到的更新数据写入差别子目录所对应的存储路径所对应的存储路径中,并提供调用接口,以供终端调用所述更新数据进行待升级软件的升级,该方案不用将数据存储在终端的文件中。
本实施例提出的软件的升级方法和***,在接收到升级请求时,获取终端发送的待升级软件与新版本软件之前的差异目录,将获取到的差异目录发送给服务器,仅仅根据该差异目录下载待升级软件中需要更新的数据,而不用下载新版本软件的所有数据,节省终端的流量。
参照图7,图7为本发明软件升级***第二实施例的功能模块示意图。
基于第一实施例提出本发明软件升级***第二实施例,在本实施例中该***还包括更新模块50,用于根据接收到的所述更新数据更新保存的待升级软件数据,同时采用新版本软件数据的目录信息更新所述待升级软件的目录信息。
在本实施例中在完成软件的升级后,可采用新版本软件数据的目录信息更新待升级软件的目录信息,以便于终端的软件下次在进行升级时,直接获取终端当前安装软件的目录信息,使得终端软件的升级速率更高,同时采用接收到的更新数据更新保存的待升级软件数据,使得终端在卸载软件后,可直接更具保存的软件数据直接安装软件,而不用重新由服务器器下载软件,节省终端流量,该软件数据可在终端卸载软件后手动删除,或者在终端卸载软件后预设的时间间隔自动删除。
参照图8,图8为本发明软件升级***第三实施例的功能模块示意图。
基于第一实施例和第二实施例提出本发明软件升级***第三实施例,在本实施例中该***还包括判断模块60以及软件安装模块70,所述判断模块60用于接收到软件的安装请求时,判断是否存储有所述软件的数据;所述软件安装模块70,用于若存储有所述软件的数据,则调用存储的所述软件的数据安装所述软件;所述第一发送模块30还用于若未存储所述软件的数据,则向所述服务器发送数据获取指令;所述软件安装模块70还用于在接收到服务器反馈的软件数据时,根据所述软件数据安装所述软件。
接收到软件安装请求时,首先判断是否存储有软件数据,当存储有软件数据时,直接调用存储的软件数据安装该软件,以节省终端的流量,在安装时将该软件数据写入***盘中;若未存储软件数据,则向所述服务器发送数据获取指令,在接收到服务器反馈的软件数据时,根据所述软件数据安装所述软件,在安装该软件的同时可存储该软件数据,以便于在软件卸载后根据该软件数据重新安装软件;在本实施例中,服务器在向终端下发软件数据的同时会下发软件的目录以及对应的目录信息,以便在升级时通过待升级软件的目录信息以及新版本软件的目录信息,确定新版本软件以及待升级软件的差别子目录。
在本发明软件升级***第一实施例中,所述第一获取模块10还用于根据接收到的升级请求获取新版本软件的版本号;所述第一发送模块30还用于将所述获取模块获取到的版本号发送给服务器,以供服务器根据接收到版本号确定新版本软件的目录信息;所述第一获取模块10还用于在接收到服务器下发的新版本软件的目录信息时,获取终端待升级软件的目录信息。
当终端当前搭载的软件不是最新版本时,且当前搭载的软件的版本号与最新版本软件的版本号不相邻时,可向用户推送提示信息,以提示用户选择升级至哪个版本,接收到用户的选择信息时,确定用户选择的软件版本号,此时触发的包含新版本软件的版本号的升级请求,在接收到该升级请求时,解码该升级请求并将解码后获取到的版本号发送给服务器,以获取对应该版本软件的目录信息,比对获取到的新版本软件的目录信息以及待升级软件的额目录信息,以确定差异子目录,将差异子目录发送至服务器以获取对应的更新数据,此方案具有选择性,当终端在兼容问题时,不强制用户升级到最新版本的软件,以减少升级后出现的问题。
参照图9,图9为本发明软件升级***第四实施例的功能模块示意图。
本实施例提出一种软件的升级***,包括:
第二获取模块80,用于接收到终端发送的待升级软件的升级请求时,获取终端待升级软件的目录信息以及新版本软件的目录信息,所述目录信息包括子目录信息;
本实施例中的执行主体为服务器,可将终端待升级软件的版本号封装在升级请求中,服务器在接收到终端发送的到待升级软件的升级请求时,解码该升级请求以获取待升级软件的版本号,根据预设的软件版本号与软件目录信息的映射关系,确定待升级软件的版本号所对应的目录信息,同时获取最新版本软件的目录信息。在本实施例中,目录信息包括子目录信息,子目录信息包括子目录中文件的修改日期及或子目录中文件的大小。
第二确定模块90,用于比对获取到的待升级软件的目录信息以及新版本软件的目录信息,确定新版本软件与待升级软件中的差别子目录;
在本实施例中,目录信息包括子目录信息,子目录信息包括子目录中文件的修改日期及或子目录中文件的大小,可根据子目录中文件的修改日期及或子目录中文件的大小确定差别子目录。每个版本软件的软件数据均对应设置有目录,建立软件数据与子目录之间的映射关系并保存在服务器,每个子目录均对应有相应的软件数据,以及子目录的目录信息,服务器在更新软件时,在旧版本软件的数据的基础上进行更新,更新某个子目录的文件之后,可更改该子目录对应的目录信息如更改时间以及文件大小。
将获取到的待升级软件的目录信息以及新版本软件的子目录信息依次进行比对时,例如,当子目录信息中有多个一级子目录,每个一级子目录对应多个二级子目录,此时依次比对每个一级子目录中的二级子目录中的文件大小以及修改日期,当有二级子目录的文件大小及或修改日期不同时,将该子目录作为差别子目录,并继续比对其它二级子目录的文件大小或者修改日期,在比对完该一级子目录的所有二级子目录时,比对下一个一级目录直至比对完所有的一级目录,将记录的差别子目录发送给服务器,服务器根据预存的目录的软件数据的映射关系,获取新版本软件数据中差别子目录所对应的软件数据(即更新数据),并将获取到的更新数据下发给终端。在比对待升级软件的目录信息以及新版本软件的目录信息时,优选方案为同时比对子目录的修改时间以及大小,以使待升级软件的目录信息以及新版本软件的目录信息的比对结果更加精确。
所述第二获取模块80还用于根据确定的差别子目录获取所述确定的差别子目录对应的新版本软件更新数据;
服务器预存有子目录与软件数据的映射关系,在确定了待升级软件与新版本软件的差别子目录后,根据子目录与软件数据的映射关系获取差别子目录所对应的更新数据。
第二发送模块100,用于将所述更新数据发送给终端,以供终端将所述更新数据更新入所述差别子目录所对应的存储路径中,以升级所述待升级软件。
在接收到服务器发送更新数据时,终端将获取到的更新数据写入差别子目录所对应的存储路径所对应的存储路径中,以供终端进行待升级软件的升级。在本实施例中将所述更新数据更新入所述差别子目录所对应的存储路径中有三种情况:A、新版本软件与旧版本软件的子目录的数量相同,直接采用更新数据更新差别子目录中的数据;B、新版本软件子目录的数量大于旧版本软件子目录的数量,则差别子目录可能为多余出来的数据,此时直接采用新版本软件的目录替换旧版本软件的目录,同时将更新数据写入差别子目录所对应的存储路径;C、新版本软件子目录的数量小于旧版本软件子目录的数量,则差别子目录可能为删除的数据,此时直接删除差别子目录。
本实施例提出的软件的升级***,在接收到升级请求时,获取终端发送的待升级软件与新版本软件之前的差异目录,将获取到的差异目录发送给服务器,仅仅根据该差异目录下载待升级软件中需要更新的数据,而不用下载新版本软件的所有数据,节省终端的流量。
以上所述仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种软件的升级方法,其特征在于,包括:
接收到待升级软件的升级请求时,获取终端待升级软件的目录信息以及新版本软件的目录信息,所述目录信息包括子目录信息,所述子目录信息包括子目录中文件的修改日期及/或子目录中文件的大小;
比对获取到的待升级软件的目录信息以及新版本软件的目录信息,确定新版本软件与待升级软件中的差别子目录;
将确定的差别子目录发送至服务器,并从服务器获取所述确定的差别子目录对应的新版本软件更新数据;
在接收到服务器发送的所述更新数据时,将所述更新数据更新入所述差别子目录所对应的存储路径中,以供终端升级所述待升级软件,其中,在新版本软件子目录的数量大于旧版本软件子目录的数量时,采用新版本软件的目录替换旧版本软件的目录,并将更新数据写入差别子目录对应的存储路径。
2.根据权利要求1所述的方法,其特征在于,在接收到服务器发送的所述更新数据时,将所述更新数据更新入所述差别子目录所对应的存储路径中,以供终端升级所述待升级软件的步骤之后,该方法包括:
根据接收到的所述更新数据更新保存的待升级软件数据,同时采用新版本软件数据的目录信息更新所述待升级软件的目录信息。
3.根据权利要求1所述的方法,其特征在于,该方法还包括:
接收到软件的安装请求时,判断是否存储有所述软件的数据;
若存储有所述软件的数据,则调用存储的所述软件的数据安装所述软件;
若未存储所述软件的数据,则向所述服务器发送数据获取指令;
在接收到服务器反馈的软件数据时,根据所述软件数据安装所述软件。
4.根据权利要求1所述的方法,其特征在于,所述接收到待升级软件的升级请求时,获取终端待升级软件的目录信息以及新版本软件的目录信息的步骤包括:
根据接收到的升级请求获取新版本软件的版本号,并将该版本号发送给服务器,以供服务器根据接收到版本号确定新版本软件的目录信息;
在接收到服务器下发的新版本软件的目录信息时,获取终端待升级软件的目录信息。
5.一种软件升级方法,其特征在于,包括:
接收到终端发送的待升级软件的升级请求时,获取终端待升级软件的目录信息以及新版本软件的目录信息,所述目录信息包括子目录信息,所述子目录信息包括子目录中文件的修改日期及/或子目录中文件的大小;
比对获取到的待升级软件的目录信息以及新版本软件的目录信息,确定新版本软件与待升级软件中的差别子目录;
根据确定的差别子目录获取所述确定的差别子目录对应的新版本软件更新数据;
将所述更新数据发送给终端,以供终端将所述更新数据更新入所述差别子目录所对应的存储路径中,以升级所述待升级软件,其中,在新版本软件子目录的数量大于旧版本软件子目录的数量时,采用新版本软件的目录替换旧版本软件的目录,并将更新数据写入差别子目录对应的存储路径。
6.一种软件的升级***,其特征在于,包括:
第一获取模块,用于接收到待升级软件的升级请求时,获取终端待升级软件的目录信息以及新版本软件的目录信息,所述目录信息包括子目录信息;
第一确定模块,用于比对获取到的待升级软件的目录信息以及新版本软件的目录信息,确定新版本软件与待升级软件中的差别子目录,所述子目录信息包括子目录中文件的修改日期及/或子目录中文件的大小;
第一发送模块,用于将确定的差别子目录发送至服务器,并从服务器获取所述确定的差别子目录对应的新版本软件更新数据;
升级模块,用于在接收到服务器发送的所述更新数据时,将所述更新数据更新入所述差别子目录所对应的存储路径中,以供终端升级所述待升级软件,其中,在新版本软件子目录的数量大于旧版本软件子目录的数量时,采用新版本软件的目录替换旧版本软件的目录,并将更新数据写入差别子目录对应的存储路径。
7.根据权利要求6所述的***,其特征在于,该***还包括更新模块,用于根据接收到的所述更新数据更新保存的待升级软件数据,同时采用新版本软件数据的目录信息更新所述待升级软件的目录信息。
8.根据权利要求6所述的***,其特征在于,该***还包括判断模块以及软件安装模块,所述判断模块用于接收到软件的安装请求时,判断是否存储有所述软件的数据;所述软件安装模块,用于若存储有所述软件的数据,则调用存储的所述软件的数据安装所述软件;所述第一发送模块还用于若未存储所述软件的数据,则向所述服务器发送数据获取指令;所述软件安装模块还用于在接收到服务器反馈的软件数据时,根据所述软件数据安装所述软件。
9.根据权利要求6所述的***,其特征在于,所述第一获取模块还用于根据接收到的升级请求获取新版本软件的版本号;所述第一发送模块还用于将所述获取模块获取到的版本号发送给服务器,以供服务器根据接收到版本号确定新版本软件的目录信息;所第一述获取模块还用于在接收到服务器下发的新版本软件的目录信息时,获取终端待升级软件的目录信息。
10.一种软件的升级***,其特征在于,包括:
第二获取模块,用于接收到终端发送的待升级软件的升级请求时,获取终端待升级软件的目录信息以及新版本软件的目录信息,所述目录信息包括子目录信息,所述子目录信息包括子目录中文件的修改日期及/或子目录中文件的大小;
第二确定模块,用于比对获取到的待升级软件的目录信息以及新版本软件的目录信息,确定新版本软件与待升级软件中的差别子目录;
所述第二获取模块还用于根据确定的差别子目录获取所述确定的差别子目录对应的新版本软件更新数据;
第二发送模块,用于将所述更新数据发送给终端,以供终端将所述更新数据更新入所述差别子目录所对应的存储路径中,以升级所述待升级软件,其中,在新版本软件子目录的数量大于旧版本软件子目录的数量时,采用新版本软件的目录替换旧版本软件的目录,并将更新数据写入差别子目录对应的存储路径。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310656113.2A CN103685495B (zh) | 2013-12-05 | 2013-12-05 | 软件的升级方法和*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310656113.2A CN103685495B (zh) | 2013-12-05 | 2013-12-05 | 软件的升级方法和*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103685495A CN103685495A (zh) | 2014-03-26 |
CN103685495B true CN103685495B (zh) | 2019-08-16 |
Family
ID=50321770
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310656113.2A Active CN103685495B (zh) | 2013-12-05 | 2013-12-05 | 软件的升级方法和*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103685495B (zh) |
Families Citing this family (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105610596B (zh) * | 2014-11-20 | 2020-02-18 | 腾讯科技(武汉)有限公司 | 一种资源目录管理方法和网络终端 |
CN105653305A (zh) * | 2014-11-21 | 2016-06-08 | 中国南方航空工业(集团)有限公司 | 应用软件自动更新方法、服务器、客户端及其*** |
CN108073408B (zh) * | 2016-11-15 | 2020-11-24 | 平安科技(深圳)有限公司 | 自助终端的***更新方法和装置 |
CN106685718A (zh) * | 2016-12-30 | 2017-05-17 | 杭州迪普科技股份有限公司 | 配置切换方法及装置 |
CN107423078A (zh) * | 2017-02-28 | 2017-12-01 | 福建中金在线信息科技有限公司 | 一种软件更新方法及装置 |
TWI649671B (zh) * | 2017-04-14 | 2019-02-01 | 精品科技股份有限公司 | 用於固定環境的資安防護系統及其資安防護方法 |
TWI649672B (zh) * | 2017-04-14 | 2019-02-01 | 精品科技股份有限公司 | 用於固定環境的更新防護系統及其更新防護方法 |
CN108958762A (zh) * | 2017-08-02 | 2018-12-07 | 北京视联动力国际信息技术有限公司 | 一种软件的升级方法和装置 |
CN110519649B (zh) * | 2018-05-22 | 2022-04-19 | 青岛海尔多媒体有限公司 | 一种分体电视的控制方法、装置及计算机可读存储介质 |
CN110543312B (zh) * | 2018-05-29 | 2022-03-25 | 华为技术有限公司 | 一种应用软件安装方法、设备以及服务器 |
CN108888951A (zh) * | 2018-06-25 | 2018-11-27 | 网易(杭州)网络有限公司 | 游戏资源处理方法和装置 |
CN109032637A (zh) * | 2018-07-17 | 2018-12-18 | 中国建设银行股份有限公司 | 基于framework框架的软件更新方法及装置 |
CN109408090B (zh) * | 2018-10-09 | 2021-05-28 | 广东美的制冷设备有限公司 | 设备软件的升级方法、数据转化器及可读存储介质 |
CN109445830B (zh) * | 2018-12-28 | 2022-03-25 | 金蝶软件(中国)有限公司 | 一种扩展元数据升级方法及*** |
CN111459514B (zh) * | 2019-01-18 | 2023-06-23 | 普天信息技术有限公司 | 一种终端升级的处理方法、服务器及基站 |
CN110333875A (zh) * | 2019-07-02 | 2019-10-15 | 上海企创信息科技有限公司 | 一种服务程序更新方法、装置、服务器及存储介质 |
CN111506593B (zh) * | 2020-04-24 | 2023-07-18 | 东莞市精驰软件有限公司 | 软件***数据升级方法、装置、设备及存储介质 |
CN111679854B (zh) * | 2020-06-15 | 2024-01-23 | 中国银行股份有限公司 | 软件产品的版本控制方法、装置和*** |
CN115729598A (zh) * | 2022-12-05 | 2023-03-03 | 湖北省广播电视局无线台管理中心 | 一种站点服务器的软件远程更新方法、***和存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101699399A (zh) * | 2009-11-03 | 2010-04-28 | 中兴通讯股份有限公司 | 一种软件更新的***和方法 |
CN102799445A (zh) * | 2012-05-03 | 2012-11-28 | 陈昊 | 一种基于Android平台的应用升级方法及*** |
CN103049283A (zh) * | 2012-11-28 | 2013-04-17 | 镇江为天下信息服务有限公司 | 一种每个软件文件都设定版本号的自动升级方法 |
CN103136013A (zh) * | 2011-12-01 | 2013-06-05 | 腾讯科技(深圳)有限公司 | 软件升级方法和*** |
CN103259672A (zh) * | 2012-02-17 | 2013-08-21 | 阿里巴巴集团控股有限公司 | 软件升级方法和*** |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103176867B (zh) * | 2013-04-02 | 2017-12-01 | 浪潮电子信息产业股份有限公司 | 一种快速文件差异备份方法 |
-
2013
- 2013-12-05 CN CN201310656113.2A patent/CN103685495B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101699399A (zh) * | 2009-11-03 | 2010-04-28 | 中兴通讯股份有限公司 | 一种软件更新的***和方法 |
CN103136013A (zh) * | 2011-12-01 | 2013-06-05 | 腾讯科技(深圳)有限公司 | 软件升级方法和*** |
CN103259672A (zh) * | 2012-02-17 | 2013-08-21 | 阿里巴巴集团控股有限公司 | 软件升级方法和*** |
CN102799445A (zh) * | 2012-05-03 | 2012-11-28 | 陈昊 | 一种基于Android平台的应用升级方法及*** |
CN103049283A (zh) * | 2012-11-28 | 2013-04-17 | 镇江为天下信息服务有限公司 | 一种每个软件文件都设定版本号的自动升级方法 |
Also Published As
Publication number | Publication date |
---|---|
CN103685495A (zh) | 2014-03-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103685495B (zh) | 软件的升级方法和*** | |
CN102622241B (zh) | 一种软件升级方法及装置 | |
CN101616018B (zh) | 网管软件升级的方法及装置 | |
KR101198583B1 (ko) | 메타데이터를 이용한 멀티미디어 미들웨어 장치와 그 관리방법 및 기록 매체 | |
CN101656789B (zh) | 手机实现管理应用程序信息的方法及应用程序管理器 | |
CN102546675A (zh) | 软件升级***及方法 | |
CN106951284B (zh) | 基于安卓***应用的用户界面升级方法、装置及智能终端 | |
CN105373396A (zh) | 插件平台中的插件更新方法和装置 | |
CN101335641A (zh) | 一种升级设备的方法、装置及*** | |
CN101593121A (zh) | 软件在线升级的方法、装置及*** | |
EP2074807A2 (en) | Systems and methods for storing or performing functions within removable memory, such as a subscriber identity module of a mobile device | |
CN107016280A (zh) | 一种客户端应用程序的升级方法及*** | |
CN103036706A (zh) | 应用升级异常的本地处理方法 | |
CN108874437B (zh) | 一种android应用程序的在线云更新方法 | |
US20120210317A1 (en) | Method and apparatus for updating data card | |
US20140258545A1 (en) | System and method for managing service characteristics | |
CN106886422A (zh) | 软件升级方法及装置、电子设备 | |
CN104918114A (zh) | 一种操作***升级方法及装置 | |
CN104834541A (zh) | 功能模块挂载方法、挂载***及更新挂载***的方法 | |
CN104809011A (zh) | 一种应用程序的管理方法 | |
CN102137154A (zh) | 一种对cpe进行升级的方法和装置 | |
CN104699499A (zh) | 一种异构终端软件升级方法 | |
US20160378553A1 (en) | Resource Management Method and Device for Terminal System | |
CN112764772A (zh) | 更新文件的预下载方法、加载方法、装置、设备及介质 | |
US20070156841A1 (en) | Platform independent user interface for a mobile device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |