CN108874436A - 一种软件升级方法、装置、终端设备及介质 - Google Patents
一种软件升级方法、装置、终端设备及介质 Download PDFInfo
- Publication number
- CN108874436A CN108874436A CN201810611057.3A CN201810611057A CN108874436A CN 108874436 A CN108874436 A CN 108874436A CN 201810611057 A CN201810611057 A CN 201810611057A CN 108874436 A CN108874436 A CN 108874436A
- Authority
- CN
- China
- Prior art keywords
- file
- software
- terminal device
- upgraded
- upgrading
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
- G06F8/656—Updates while running
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本发明实施例公开了一种软件升级方法、装置、终端设备及介质,其中,该方法包括:终端设备判断第一软件是否需要进行升级;若是,所述终端设备从服务器获取所述第一软件的第一版本的文件列表信息;所述终端设备将获取的所述第一版本的文件列表信息与所述终端设备存储的所述第一软件的第二版本的文件列表信息进行比较,确定所述第一软件需要进行升级的文件,所述第一版本为所述第二版本的升级版本;所述终端设备从所述服务器获取所述需要进行升级的文件;所述终端设备根据获取到的所述需要进行升级的文件对所述第一软件进行升级。实施本发明实施例,提高了软件升级效率。
Description
技术领域
本发明涉及网络技术领域,尤其涉及一种软件升级方法、装置、终端设备及介质。
背景技术
目前,对移动终端的应用软件升级,都是用户通过互联网、或者专业的软件提供商处获得更新的应用软件后,自动下载、升级的。整个过程需要依赖用户的操作,软件升级效率低,如何设计一种效率高的软件升级方式是目前亟需解决的技术问题。
发明内容
本发明实施例所要解决的技术问题在于,提供一种软件升级方法、装置、终端设备及介质,提高了软件升级效率。
第一方面,本发明实施例提供了一种软件升级方法,所述方法包括:
终端设备判断第一软件是否需要进行升级;
若是,所述终端设备从服务器获取所述第一软件的第一版本的文件列表信息;
所述终端设备将获取的所述第一版本的文件列表信息与所述终端设备存储的所述第一软件的第二版本的文件列表信息进行比较,确定所述第一软件需要进行升级的第一文件,所述第一版本为所述第二版本的升级版本;
所述终端设备从所述服务器获取所述需要进行升级的第一文件;
所述终端设备根据获取到的所述需要进行升级的第一文件对所述第一软件进行升级。
结合第一方面,在第一方面的第一种可能的实现方式中,所述终端设备根据获取到的所述需要进行升级的第一文件对所述第一软件进行升级,包括:
若所述第二版本中的第二文件可写,则所述终端设备将所述第二文件升级为所述第一文件,所述第一文件为所述第二文件的升级文件。
结合第一方面,在第一方面的第二种可能的实现方式中,所述终端设备根据获取到的所述需要进行升级的第一文件对所述第一软件进行升级,包括:
若所述第二版本中的第二文件可写且所述终端设备将所述第二文件升级为所述第一文件时升级失败,则所述终端设备对所述第二版本中的第二文件进行重命名并将所述第一文件添加到所述第一软件的目录中;
在所述终端设备下一次开机重启时,所述终端设备删除所述第一软件的目录中的所述第二文件。
结合第一方面,在第一方面的第三种可能的实现方式中,所述终端设备根据获取到的所述需要进行升级的第一文件对所述第一软件进行升级,包括:
若所述第二版本中的第二文件不可写且所述第一软件处于后台运行模式,则所述终端设备退出所述第一软件的运行并将所述第一软件的第二文件升级为所述第一文件,所述第一文件为所述第二文件的升级文件。
结合第一方面的第三种可能的实现方式,在第一方面的第四种可能的实现方式中,所述终端设备退出所述第一软件的运行并将所述第一软件的第二文件升级为所述第一文件之后,还包括:
所述终端设备重新启动所述第一软件。
结合第一方面,在第一方面的第五种可能的实现方式中,所述终端设备根据获取到的所述需要进行升级的第一文件对所述第一软件进行升级,包括:
若所述第二版本中的第二文件不可写且所述第一软件处于前端运行模式,则所述终端设备在下一次开机重启时将所述第一软件的第二文件升级为所述第一文件,所述第一文件为所述第二文件的升级文件。
第二方面,本发明实施例提供了一种软件升级装置,所述装置包括:
判断单元,用于判断第一软件是否需要进行升级;
第一获取单元,用于若所述判断单元判断出所述第一软件需要进行升级,从服务器获取所述第一软件的第一版本的文件列表信息;
确定单元,用于将获取的所述第一版本的文件列表信息与所述终端设备存储的所述第一软件的第二版本的文件列表信息进行比较,确定所述第一软件需要进行升级的第一文件,所述第一版本为所述第二版本的升级版本;
第二获取单元,用于从所述服务器获取所述需要进行升级的第一文件;
升级单元,用于根据获取到的所述需要进行升级的第一文件对所述第一软件进行升级。
结合第二方面,在第二方面的第一种可能的实现方式中,所述升级单元具体用于:
若所述第二版本中的第二文件可写,则将所述第二文件升级为所述第一文件,所述第一文件为所述第二文件的升级文件。
结合第二方面,在第二方面的第二种可能的实现方式中,所述升级单元包括:
重命名单元,用于若所述第二版本中的第二文件可写且所述终端设备将所述第二文件升级为所述第一文件时升级失败,则对所述第二版本中的第二文件进行重命名并将所述第一文件添加到所述第一软件的目录中;
删除单元,用于在所述终端设备下一次开机重启时,删除所述第一软件的目录中的所述第二文件。
结合第二方面,在第二方面的第三种可能的实现方式中,所述升级单元具体用于:
若所述第二版本中的第二文件不可写且所述第一软件处于后台运行模式,则退出所述第一软件的运行并将所述第一软件的第二文件升级为所述第一文件,所述第一文件为所述第二文件的升级文件。
结合第二方面的第三种可能的实现方式,在第二方面的第四种可能的实现方式中,所述装置还包括:
重启单元,用于在所述升级单元退出所述第一软件的运行并将所述第一软件的第二文件升级为所述第一文件之后,重新启动所述第一软件。
结合第二方面,在第二方面的第五种可能的实现方式中,所述升级单元具体用于:
若所述第二版本中的第二文件不可写且所述第一软件处于前端运行模式,则在下一次开机重启时将所述第一软件的第二文件升级为所述第一文件,所述第一文件为所述第二文件的升级文件。
第三方面,本发明实施例提供了一种终端设备,包括:处理器、存储器、通信接口和总线;
所述处理器、所述存储器和所述通信接口通过所述总线连接并完成相互间的通信;所述存储器存储可执行程序代码;所述处理器通过读取所述存储器中存储的可执行程序代码来运行与所述可执行程序代码对应的程序,以用于执行第一方面或第一方面任意一种实现方式中所描述的一种软件升级方法。
第四方面,本发明实施例提供一种计算机存储介质,其中,该计算机存储介质用于存储应用程序,所述应用程序用于在运行时执行本发明实施例的所述的一种软件升级方法。
第五方面,本发明实施例提供一种应用程序,其中,该应用程序用于在运行时执行本发明实施例所述的一种软件升级方法。
实施本发明实施例,具有如下有益效果:
终端设备可以自主判断第一软件是否需要进行升级,若判断出第一软件需要进行升级,则终端设备自主向服务器获取第一软件需要升级到的第一版本的文件列表信息,进而结合本地第一版本的文件信息列表来确定第一软件中的哪些文件需要进行升级,进而向服务器获取第一软件需要升级的第一文件,从而根据第一文件对第一软件进行升级。实施本发明实施例,可以实现终端设备自主进行软件版本升级,无需用户手动操作升级过程,可以实现软件后台自动升级,节省了用户的操作,提高了软件升级效率。并且升级操作对用户的使用无影响,可以避免对用户的打扰,提高用户体验。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍。
图1是本发明实施例提供的一种软件升级方法的流程示意图;
图2是本发明实施例提供的一种软件升级装置的结构示意图;
图3是本发明实施例提供的一种终端设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行描述。
请参见图1,是本发明实施例提供的一种软件升级方法的流程示意图。该软件升级方法可以包括但不限于以下步骤。
S101、终端设备判断第一软件是否需要进行升级,若是,执行步骤S102。
本发明实施例中,终端设备判断第一软件是否需要进行升级的方式可以为:终端设备从服务器获取第一软件的版本号,根据该版本号判断第一软件是否需要升级。例如,若终端设备上安装的第一软件的当前版本号与从服务器上获取到的第一软件的最新版本号不一致,则表明第一软件需要升级。
其中,第一软件可以是终端设备上安装的任意一款软件,例如,第一软件为金山毒霸。例如,若终端设备从服务器上获取到的金山毒霸的版本号为2.0,而终端设备当前安装的金山毒霸的版本号为1.0,则终端设备可以判定金山毒霸需要进行升级。
S102、所述终端设备从服务器获取所述第一软件的第一版本的文件列表信息。
本发明实施例中,当终端设备判断出第一软件需要升级后,再确定第一软件的哪些文件需要进行升级。具体的,终端设备从服务器获取第一软件的所有文件信息,即上述文件列表信息,之后将本地的第一软件的所有文件信息与从服务器上获取到的第一软件的所有文件信息进行一一比对,从而确定出哪些文件需要进行升级。其中,文件列表信息可以包括:文件名、文件大小、循环冗余校验码(Cyclic Redundancy Check,CRC)、信息-摘要算法(Message-Digest Algorithm 5,MD5)中的一种或多种。文件列表信息,即服务器上关于第一软件的所有文件的相关信息,包括:1、存储在服务器上的路径,用于下载第一软件的所有文件。2、对应的本地路径(相当于真的设备上的软件安装目录,这里具体指的是对应于软件安装根目录的相对路径。终端设备的升级程序已知自身软件的安装根目录,再通过此相对路径即可确定本地完整路径。比如某个终端上毒霸的安装根目录为C:\Program Files(x86)\kingsoft\kingsoft antivirus,某服务器文件在终端的相对路径为data\bootacc.dat,则该服务器文件在此终端上对应的本地文件是C:\Program Files(x86)\kingsoft\kingsoft antivirus\data\bootacc.dat)。3、服务器文件的校验信息,终端设备计算终端设备的本地文件的相应信息与该校验信息做对比,也即是指终端设备将本地文件与服务器文件进行对比,以判断本地文件是否和服务器文件相同,不同则判断为该文件需要进行升级。比如文件列表信息中,服务器文件A的MD5为X1,而终端上与之对应文件为B,B的MD5为X2,若X1不等于X2,则说明文件B需要进行升级。
其中,第一版本为第一软件需要升级到的新版本,为了便于描述,下述实施例中将第一软件升级之前的版本称为第二版本,也即是说,第一版本为第二版本的升级版本。
S103、所述终端设备将获取的所述第一版本的文件列表信息与所述终端设备存储的所述第一软件的第二版本的文件列表信息进行比较,确定所述第一软件需要进行升级的第一文件,所述第一版本为所述第二版本的升级版本。
本发明实施例中,终端设备将从服务器获取的第一软件的文件信息列表与终端设备当前的版本对应的文件列表信息进行对比,从而确定第一软件中的哪些文件需要升级,确定的需要进行升级的即为第一文件。其中,第一文件为第一软件的第一版本中的全部文件中的部分文件或者全部文件。也即是说,如果需要升级的只是极少数文件而非安装包的所有文件,则终端设备可以只向服务器请求获取该部分需要升级的文件而非整个新版本的安装包,这种实现方式可以减少终端设备下载的文件包大小,节省终端设备的流量消耗。
例如,终端设备从服务器获取到的文件信息列表中包括文件1、文件2和文件3的信息,终端设备将获取到的文件1-文件3的信息与本地已安装的旧版本中的文件1-文件3进行比较,从而确定出其中只需要对文件3进行更新,文件1和文件2不需要进行升级。
S104、所述终端设备从所述服务器获取所述需要进行升级的第一文件。
终端设备确定出哪些文件需要进行升级后,从服务器获取需要进行升级的第一文件。
S105、所述终端设备根据获取到的所述需要进行升级的第一文件对所述第一软件进行升级。
可选的,本发明实施例提供几种升级方案,具体为:
方案1、文件升级方案。若第一软件中需要升级的旧文件(为便于描述,本发明实施例将旧文件命名为第二文件,将新文件命名为第一文件)的文件内容可以被修改,可以直接对文件进行升级。其中,文件升级是指:将旧文件从第一软件的目录下删除并且将需要升级的新文件添加到第一软件的目录下,完成升级。
方案2、重命名升级方案。对于文件内容不可修改但文件名可以修改的文件,将旧文件(即第二文件)的文件名重命名并将需要升级的新文件(即第一文件)添加到第一软件的目录下,等终端设备下一次重启时将旧文件从第一软件的目录下删除,完成升级。
其中,文件是否可写(文件内容可以修改或者文件名可以修改)可以通过WindowsAPI来判断。
方案3、重启升级方案。对于文件内容不可修改并且文件名也不可以修改的文件,可以执行重启终端设备过程,终端设备在重启时将旧文件从第一软件的目录下删除并且将需要升级的新文件添加到第一软件的目录下,由于重启终端设备时尚未有用户进程运行,也就不会有文件被占用,因此能确保删除旧文件操作或替换旧文件操作成功执行。对于不可写的文件可使用此机制进行重启终端设备后升级。
具体的,所述终端设备根据获取到的所述需要进行升级的第一文件对所述第一软件进行升级,包括:
若所述第二版本中的第二文件可写,则所述终端设备可以先尝试将所述第二文件升级为所述第一文件,即终端设备将旧文件从第一软件的目录下删除并且将需要升级的新文件添加到第一软件的目录下。若尝试升级失败,则终端设备执行重命名升级方案,即对所述第二文件进行重命名并将所述第一文件添加到所述第一软件的目录中。在所述终端设备下一次开机重启时,所述终端设备删除所述第一软件的目录中的所述第二文件,从而完成升级过程。
可选的,若需要升级的文件为升级程序本身,则需要执行重命名升级方案,因为在进行软件升级时,第一软件的升级程序正在被运行,无法进行文件升级过程。
若所述第二版本中的第二文件不可写,即旧文件既不能修改文件内容也不能修改文件名,则此时可能是由于第一软件本身对旧文件的占用导致的旧文件不可写,也可能是由于其他软件(例如操作***软件)正在占用旧文件导致的旧文件不可写。如果第一软件是由于自身的占用导致旧文件不可写,则终端设备退出第一软件的运行,以解除软件自身对旧文件的占用,第一软件退出后,终端设备再执行将第二文件从第一软件的目录中删除并将第一文件添加到第一软件的目录中,从而完成升级过程。可选的,升级过程完成后,所述终端设备可以重新启动所述第一软件,以不影响用户使用第一软件。
例如,金山毒霸的升级程序后台自动执行升级过程,终端设备下载需升级的新文件到本地后,发现需升级的文件中有部分文件不可写,终端设备通知金山毒霸退出,金山毒霸此时正处于后台模式,退出不会影响用户,故退出成功。升级程序再次检测发现需升级的文件已经全部可写,逐个对文件执行升级,升级完成后,重新启动金山毒霸。
如果第一软件是由于其他软件的占用导致旧文件不可写,则终端设备执行重启升级过程,即在下一次终端设备重启开机时,终端设备再执行将第二文件从第一软件的目录中删除并将第一文件添加到第一软件的目录中,从而完成升级过程。
例如,金山毒霸的升级程序后台自动执行升级过程,终端设备下载需升级的新文件到本地后,发现需升级的文件中有部分文件不可写,通知金山毒霸退出,此时用户正在使用金山毒霸的垃圾清理功能,无法退出。升级程序执行重启升级,用户重新启动终端设备时,逐个对文件执行升级,升级完成。
通过实施本发明实施例,终端设备可以自主判断第一软件是否需要进行升级,若判断出第一软件需要进行升级,则终端设备自主向服务器获取第一软件需要升级到的第一版本的文件列表信息,进而结合本地第一版本的文件信息列表来确定第一软件中的哪些文件需要进行升级,进而向服务器获取第一软件需要升级的第一文件,从而根据第一文件对第一软件进行升级。实施本发明实施例,可以实现终端设备自主进行软件版本升级,无需用户手动操作升级过程,可以实现软件后台自动升级,节省了用户的操作,提高了软件升级效率。并且升级操作对用户的使用无影响,可以避免对用户的打扰,提高用户体验。
上述详细阐述了本发明实施例的方法,下面为了便于更好地实施本发明实施例的上述方案,相应地,下面还提供用于配合实施上述方案的相关设备。
请参见图2,是本发明实施例提供的一种软件升级装置的结构示意图,软件升级装置200包括:判断单元201、第一获取单元202、确定单元203、第二获取单元204和升级单元205,其中,
判断单元201,用于判断第一软件是否需要进行升级;
第一获取单元202,用于若所述判断单元201判断出所述第一软件需要进行升级,从服务器获取所述第一软件的第一版本的文件列表信息;
确定单元203,用于将获取的所述第一版本的文件列表信息与所述终端设备存储的所述第一软件的第二版本的文件列表信息进行比较,确定所述第一软件需要进行升级的第一文件,所述第一版本为所述第二版本的升级版本;
第二获取单元204,用于从所述服务器获取所述需要进行升级的第一文件;
升级单元205,用于根据获取到的所述需要进行升级的第一文件对所述第一软件进行升级。
可选的,所述升级单元205具体用于:
若所述第二版本中的第二文件可写,则将所述第二文件升级为所述第一文件,所述第一文件为所述第二文件的升级文件。
可选的,所述升级单元205包括:
重命名单元,用于若所述第二版本中的第二文件可写且所述终端设备将所述第二文件升级为所述第一文件时升级失败,则对所述第二版本中的第二文件进行重命名并将所述第一文件添加到所述第一软件的目录中;
删除单元,用于在所述终端设备下一次开机重启时,删除所述第一软件的目录中的所述第二文件。
可选的,所述升级单元205具体用于:
若所述第二版本中的第二文件不可写且所述第一软件处于后台运行模式,则退出所述第一软件的运行并将所述第一软件的第二文件升级为所述第一文件,所述第一文件为所述第二文件的升级文件。
可选的,软件升级装置200还包括:
重启单元,用于在所述升级单元205退出所述第一软件的运行并将所述第一软件的第二文件升级为所述第一文件之后,重新启动所述第一软件。
可选的,所述升级单元205具体用于:
若所述第二版本中的第二文件不可写且所述第一软件处于前端运行模式,则在下一次开机重启时将所述第一软件的第二文件升级为所述第一文件,所述第一文件为所述第二文件的升级文件。
需要说明的是,本实施例的软件升级装置200可以相当于前述方法实施例中的终端设备,本实施例的软件升级装置200的各功能模块的功能可根据上述图1方法实施例中对应终端设备的具体实现,此处不再赘述。
请参见图3,是本发明提供的一种终端设备的结构示意图。其中,如图3所示,终端设备300可以包括:至少一个处理器301,例如中央处理器(Central Processing Unit,CPU),至少一个通信总线302,至少一个输入装置303和至少一个输出装置304,存储器305。其中,通信总线302用于实现这些组件之间的通信连接;输入装置303具体可为键盘(Keyboard)、麦克风等。输入装置303配置为可以采集或检测用户发出当前语音。输出装置304可以为显示屏(Display)、扬声器等。输出装置304配置为可以播放音频。存储器305可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器。存储器305可选的还可以是独立于前述处理器301的存储装置。此外,终端设备300还可以包括通信接口,该通信接口可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。终端设备300还可以包括摄像头、距离传感器,该摄像头用于识别用户,距离传感器用于检测用户与终端设备300之间的距离。
本领域技术人员可以理解,图3中示出的结构并不构成对终端设备300的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图3所示,作为一种存储介质的存储器305中可以包括操作***、数据存储模块、网络通信模块、用户接口模块以及终端设备的语音播报控制程序。
所述终端设备300可以是能够实现语音采集或检测、程序运行及音频播放的音箱设备,本实施例对此不加以限制。
在图3所示的终端设备300中,处理器301可以用于运行存储器305中存储的软件升级程序,并执行以下操作:
判断第一软件是否需要进行升级;
若是,通过通信接口从服务器获取所述第一软件的第一版本的文件列表信息;
将获取的所述第一版本的文件列表信息与所述终端设备存储的所述第一软件的第二版本的文件列表信息进行比较,确定所述第一软件需要进行升级的第一文件,所述第一版本为所述第二版本的升级版本;
通过通信接口从所述服务器获取所述需要进行升级的第一文件;
根据获取到的所述需要进行升级的第一文件对所述第一软件进行升级。
可选的,处理器301根据获取到的所述需要进行升级的第一文件对所述第一软件进行升级,包括:
若所述第二版本中的第二文件可写,则处理器301将所述第二文件升级为所述第一文件,所述第一文件为所述第二文件的升级文件。
可选的,处理器301根据获取到的所述需要进行升级的第一文件对所述第一软件进行升级,包括:
若所述第二版本中的第二文件可写且所述终端设备将所述第二文件升级为所述第一文件时升级失败,则处理器301对所述第二版本中的第二文件进行重命名并将所述第一文件添加到所述第一软件的目录中;
在所述终端设备下一次开机重启时,处理器301删除所述第一软件的目录中的所述第二文件。
可选的,处理器301根据获取到的所述需要进行升级的第一文件对所述第一软件进行升级,包括:
若所述第二版本中的第二文件不可写且所述第一软件处于后台运行模式,则处理器301退出所述第一软件的运行并将所述第一软件的第二文件升级为所述第一文件,所述第一文件为所述第二文件的升级文件。
可选的,处理器301退出所述第一软件的运行并将所述第一软件的第二文件升级为所述第一文件之后,处理器301还用于:
重新启动所述第一软件。
可选的,处理器301根据获取到的所述需要进行升级的第一文件对所述第一软件进行升级,包括:
若所述第二版本中的第二文件不可写且所述第一软件处于前端运行模式,则处理器301在下一次开机重启时将所述第一软件的第二文件升级为所述第一文件,所述第一文件为所述第二文件的升级文件。
可理解的是,处理器301的执行步骤具体可参见图1实施例所述的内容,这里不再赘述。
基于同一发明构思,本发明实施例还提供一种计算机存储介质,该计算机存储介质用于存储应用程序,所述应用程序用于在运行时执行本发明实施例的所述的一种软件升级方法。
基于同一发明构思,本发明实施例还提供一种应用程序,其中,该应用程序用于在运行时执行本发明实施例所述的一种软件升级方法。
综上所述,通过实施本发明实施例,终端设备可以自主判断第一软件是否需要进行升级,若判断出第一软件需要进行升级,则终端设备自主向服务器获取第一软件需要升级到的第一版本的文件列表信息,进而结合本地第一版本的文件信息列表来确定第一软件中的哪些文件需要进行升级,进而向服务器获取第一软件需要升级的第一文件,从而根据第一文件对第一软件进行升级。实施本发明实施例,可以实现终端设备自主进行软件版本升级,无需用户手动操作升级过程,可以实现软件后台自动升级,节省了用户的操作,提高了软件升级效率。并且升级操作对用户的使用无影响,可以避免对用户的打扰,提高用户体验。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random AccessMemory,RAM)等。
以上所揭露的仅为本发明一种较佳实施例而已,当然不能以此来限定本发明之权利范围,本领域普通技术人员可以理解实现上述实施例的全部或部分流程,并依本发明权利要求所作的等同变化,仍属于发明所涵盖的范围。
Claims (10)
1.一种软件升级方法,其特征在于,所述方法包括:
终端设备判断第一软件是否需要进行升级;
若是,所述终端设备从服务器获取所述第一软件的第一版本的文件列表信息;
所述终端设备将获取的所述第一版本的文件列表信息与所述终端设备存储的所述第一软件的第二版本的文件列表信息进行比较,确定所述第一软件需要进行升级的第一文件,所述第一版本为所述第二版本的升级版本;
所述终端设备从所述服务器获取所述需要进行升级的第一文件;
所述终端设备根据获取到的所述需要进行升级的第一文件对所述第一软件进行升级。
2.根据权利要求1所述的方法,其特征在于,所述终端设备根据获取到的所述需要进行升级的第一文件对所述第一软件进行升级,包括:
若所述第二版本中的第二文件可写,则所述终端设备将所述第二文件升级为所述第一文件,所述第一文件为所述第二文件的升级文件。
3.根据权利要求1所述的方法,其特征在于,所述终端设备根据获取到的所述需要进行升级的第一文件对所述第一软件进行升级,包括:
若所述第二版本中的第二文件可写且所述终端设备将所述第二文件升级为所述第一文件时升级失败,则所述终端设备对所述第二版本中的第二文件进行重命名并将所述第一文件添加到所述第一软件的目录中;
在所述终端设备下一次开机重启时,所述终端设备删除所述第一软件的目录中的所述第二文件。
4.根据权利要求1所述的方法,其特征在于,所述终端设备根据获取到的所述需要进行升级的第一文件对所述第一软件进行升级,包括:
若所述第二版本中的第二文件不可写且所述第一软件处于后台运行模式,则所述终端设备退出所述第一软件的运行并将所述第一软件的第二文件升级为所述第一文件,所述第一文件为所述第二文件的升级文件。
5.根据权利要求4所述的方法,其特征在于,所述终端设备退出所述第一软件的运行并将所述第一软件的第二文件升级为所述第一文件之后,还包括:
所述终端设备重新启动所述第一软件。
6.根据权利要求1所述的方法,其特征在于,所述终端设备根据获取到的所述需要进行升级的第一文件对所述第一软件进行升级,包括:
若所述第二版本中的第二文件不可写且所述第一软件处于前端运行模式,则所述终端设备在下一次开机重启时将所述第一软件的第二文件升级为所述第一文件,所述第一文件为所述第二文件的升级文件。
7.一种软件升级装置,其特征在于,包括:
判断单元,用于判断第一软件是否需要进行升级;
第一获取单元,用于若所述判断单元判断出所述第一软件需要进行升级,从服务器获取所述第一软件的第一版本的文件列表信息;
确定单元,用于将获取的所述第一版本的文件列表信息与所述终端设备存储的所述第一软件的第二版本的文件列表信息进行比较,确定所述第一软件需要进行升级的第一文件,所述第一版本为所述第二版本的升级版本;
第二获取单元,用于从所述服务器获取所述需要进行升级的第一文件;
升级单元,用于根据获取到的所述需要进行升级的第一文件对所述第一软件进行升级。
8.根据权利要求7所述的装置,其特征在于,所述升级单元具体用于:
若所述第二版本中的第二文件可写,则将所述第二文件升级为所述第一文件,所述第一文件为所述第二文件的升级文件。
9.一种终端设备,其特征在于,包括:处理器、存储器、通信接口和总线;所述处理器、所述存储器和所述通信接口通过所述总线连接并完成相互间的通信;所述存储器存储可执行程序代码;所述处理器通过读取所述存储器中存储的可执行程序代码来运行与所述可执行程序代码对应的程序,以用于执行如权利要求1-6任一项所述的软件升级方法。
10.一种计算机存储介质,其特征在于,所述计算机存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行如权利要求1-6任一项所述的软件升级方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810611057.3A CN108874436A (zh) | 2018-06-13 | 2018-06-13 | 一种软件升级方法、装置、终端设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810611057.3A CN108874436A (zh) | 2018-06-13 | 2018-06-13 | 一种软件升级方法、装置、终端设备及介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108874436A true CN108874436A (zh) | 2018-11-23 |
Family
ID=64338392
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810611057.3A Pending CN108874436A (zh) | 2018-06-13 | 2018-06-13 | 一种软件升级方法、装置、终端设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108874436A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111427596A (zh) * | 2020-03-12 | 2020-07-17 | 浙江大华技术股份有限公司 | 一种软件升级的方法、装置及终端设备 |
CN111782236A (zh) * | 2020-05-11 | 2020-10-16 | 广州朗国电子科技有限公司 | ***软件升级方法、装置、存储介质及一体机设备 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101753524A (zh) * | 2008-12-15 | 2010-06-23 | 青岛海信传媒网络技术有限公司 | 一种软件升级方法及*** |
CN102833686A (zh) * | 2012-07-13 | 2012-12-19 | 中广传播集团有限公司 | 一种终端软件空中升级与加载方法 |
CN104765816A (zh) * | 2015-04-03 | 2015-07-08 | 北京金山安全软件有限公司 | 浏览器的升级方法、装置和电子设备 |
CN105320554A (zh) * | 2015-12-11 | 2016-02-10 | 网易(杭州)网络有限公司 | 程序更新的方法、用于程序更新的客户端及*** |
US20170111166A1 (en) * | 2015-05-27 | 2017-04-20 | Pax Computer Technology (Shenzhen) Co., Ltd. | Data transmitting method, server and client |
CN106603311A (zh) * | 2017-01-18 | 2017-04-26 | 北京洋浦伟业科技发展有限公司 | Ota升级方法、客户端、服务器和*** |
CN106603289A (zh) * | 2016-12-15 | 2017-04-26 | 武汉虹信通信技术有限责任公司 | 一种lmt配置文件平滑升级方法 |
CN107291507A (zh) * | 2017-06-28 | 2017-10-24 | 联想(北京)有限公司 | 一种虚拟机虚拟硬盘的升级方法及电子设备 |
-
2018
- 2018-06-13 CN CN201810611057.3A patent/CN108874436A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101753524A (zh) * | 2008-12-15 | 2010-06-23 | 青岛海信传媒网络技术有限公司 | 一种软件升级方法及*** |
CN102833686A (zh) * | 2012-07-13 | 2012-12-19 | 中广传播集团有限公司 | 一种终端软件空中升级与加载方法 |
CN104765816A (zh) * | 2015-04-03 | 2015-07-08 | 北京金山安全软件有限公司 | 浏览器的升级方法、装置和电子设备 |
US20170111166A1 (en) * | 2015-05-27 | 2017-04-20 | Pax Computer Technology (Shenzhen) Co., Ltd. | Data transmitting method, server and client |
CN105320554A (zh) * | 2015-12-11 | 2016-02-10 | 网易(杭州)网络有限公司 | 程序更新的方法、用于程序更新的客户端及*** |
CN106603289A (zh) * | 2016-12-15 | 2017-04-26 | 武汉虹信通信技术有限责任公司 | 一种lmt配置文件平滑升级方法 |
CN106603311A (zh) * | 2017-01-18 | 2017-04-26 | 北京洋浦伟业科技发展有限公司 | Ota升级方法、客户端、服务器和*** |
CN107291507A (zh) * | 2017-06-28 | 2017-10-24 | 联想(北京)有限公司 | 一种虚拟机虚拟硬盘的升级方法及电子设备 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111427596A (zh) * | 2020-03-12 | 2020-07-17 | 浙江大华技术股份有限公司 | 一种软件升级的方法、装置及终端设备 |
CN111782236A (zh) * | 2020-05-11 | 2020-10-16 | 广州朗国电子科技有限公司 | ***软件升级方法、装置、存储介质及一体机设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100915564B1 (ko) | 실행하는 동안 애플리케이션을 업그레이드하기 위한 방법,소프트웨어 및 장치 | |
US7904895B1 (en) | Firmware update in electronic devices employing update agent in a flash memory card | |
US9032383B2 (en) | Automatically updating applications on a client's device without interrupting the user's experience | |
US7017155B2 (en) | Installing software on a mobile computing device using the rollback and security features of a configuration manager | |
CN101110788B (zh) | 升级客户端软件的方法及*** | |
US20120102477A1 (en) | Firmware update method and apparatus for a mobile device | |
CN110597542B (zh) | 软件自动ota升级方法及装置、电子设备 | |
CN110311964A (zh) | 套接字ota升级方法、装置、***、用户终端和存储介质 | |
CN107273160A (zh) | 一种版本升级的方法及装置 | |
KR20100081720A (ko) | 포타 서비스 방법 및 시스템 | |
WO2016058350A1 (zh) | 一种基站软件版本管理方法和设备 | |
US11113045B2 (en) | Image install of a network appliance | |
EP1775913A1 (en) | Method for controlling multimedia middleware apparatus using metadata | |
KR101541112B1 (ko) | Fota 시스템 및 그 실행 방법 | |
KR101201276B1 (ko) | 액션 리스트 및 버저닝을 이용한 무선 디바이스상에서액션을 수행하기 위한 방법, 소프트웨어 및 장치 | |
CN103973745B (zh) | 一种移动终端操作***升级的方法及装置 | |
CN105446768B (zh) | ***升级方法及装置 | |
JPWO2009078285A1 (ja) | 無線端末、無線端末の不揮発性メモリ、および診断情報のフェイルセーフ保存方法 | |
CN105530130A (zh) | 一种空中下载技术的升级方法及装置 | |
CN108874436A (zh) | 一种软件升级方法、装置、终端设备及介质 | |
CN110457049A (zh) | 实现插件自动化的方法、装置、电子设备及存储介质 | |
CN106990988A (zh) | 一种程序更新的方法及装置 | |
JP2007034623A (ja) | コンピュータウイルスの検出方法、プログラム、プログラムが記憶された記録媒体およびコンピュータウイルスの検出装置 | |
CN113064611B (zh) | 针对无线设备实现数据分析软件升级的方法及其更新方法 | |
WO2017096889A1 (zh) | ***升降级的方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20191126 Address after: 100085 Beijing City, Haidian District Road 33, two floor East Xiaoying Applicant after: BEIJING KINGSOFT INTERNET SECURITY SOFTWARE Co.,Ltd. Address before: 519070, No. 10, main building, No. six, science Road, Harbour Road, Tang Wan Town, Guangdong, Zhuhai, 601F Applicant before: Zhuhai Juntian Electronic Technology Co.,Ltd. |
|
TA01 | Transfer of patent application right | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20181123 |
|
RJ01 | Rejection of invention patent application after publication |