CN111427596A - 一种软件升级的方法、装置及终端设备 - Google Patents
一种软件升级的方法、装置及终端设备 Download PDFInfo
- Publication number
- CN111427596A CN111427596A CN202010169739.0A CN202010169739A CN111427596A CN 111427596 A CN111427596 A CN 111427596A CN 202010169739 A CN202010169739 A CN 202010169739A CN 111427596 A CN111427596 A CN 111427596A
- Authority
- CN
- China
- Prior art keywords
- software
- version number
- dynamic link
- function
- updated
- 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.)
- Granted
Links
Images
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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/71—Version control; Configuration management
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)
- Information Transfer Between Computers (AREA)
- Stored Programmes (AREA)
Abstract
本发明公开了一种软件升级的方法、装置及终端设备,用于解决现有技术中软件升级效率较低的问题。所述方法包括:接收对所述软件的功能升级的指示信息;向服务器发送请求,以获得所述软件的更新配置文件的参数信息,其中,所述参数信息至少包括软件安装包对应的版本号和多个DLL动态链接模块的更新版本号;确定所述版本号是否与所述软件的当前安装包的版本号相同,若不相同,则将所述软件包括的当前版本号与所述更新版本号不相同的DLL动态链接模块的更新版本号记录至待更新资源列表;向所述服务器发送资源请求,以获得所述待更新资源列表中DLL动态链接模块的更新版本号对应的文件,并对所述软件进行升级。
Description
技术领域
本发明涉及通信技术领域,尤其涉及一种软件升级的方法、装置及终端设备。
背景技术
目前,为了满足用户对终端设备中安装的软件的多种需求以及防止病毒的入侵,在软件发布使用后,可以为用户提供软件的新版本,从而可以对软件进行升级以使软件原有的缺陷修复且功能更加完善。
然而,现有技术中,在对终端设备中安装的软件进行升级时,终端设备需要与服务器建立多次下载连接,以获得软件新版本的所有DLL(Dynamic Link Library,动态链接库)动态连接模块的版本信息,这样的软件升级方法,导致整个软件升级的效率较低。
发明内容
本发明实施例提供一种软件升级的方法、装置及终端设备,用于解决现有技术的软件升级的升级效率较低技术问题。
第一方面,提供一种软件升级的方法,所述方法包括:
接收对所述软件的功能升级的指示信息;
向服务器发送请求,以获得所述软件的更新配置文件的参数信息,其中,所述参数信息至少包括软件安装包对应的版本号和多个DLL动态链接模块的更新版本号;
确定所述版本号是否与所述软件的当前安装包的版本号相同,若不相同,则将所述软件包括的当前版本号与所述更新版本号不相同的DLL动态链接模块的更新版本号记录至待更新资源列表;
向所述服务器发送资源请求,以获得所述待更新资源列表中DLL动态链接模块的更新版本号对应的文件,并对所述软件进行升级。
在一种可能的实施方式中,若接收对所述软件的预定功能升级的指示信息,则所述软件包括的当前版本号包括预定功能对应的DLL动态链接模块的当前版本号;其中,所述预定功能包括使用频率低于第一阈值的功能模块对应的功能和资源占用内存值大于第二阈值的功能模块对应的功能。
在一种可能的实施方式中,所述方法还包括:
对记录至所述待更新列表的所述预定功能对应的DLL动态链接模块进行标注,以使下一次对所述预定功能对应的DLL动态链接模块进行更新时,根据所述标注信息确定是否对所述预定功能对应的DLL动态链接模块进行更新。
在一种可能的实施方式中,向所述服务器发送资源请求,以获得所述待更新资源列表中DLL动态链接模块的更新版本号对应的文件,并对所述软件进行升级,包括:
下载所述待更新资源列表中DLL动态链接模块的更新版本号对应的更新功能模块文件,并启动所述更新功能模块文件中升级程序以截停所述软件正在运行的所述待更新资源列表中DLL动态链接模块的进程;
将下载的所述更新功能模块文件中与所述待更新资源列表中DLL动态链接模块对应的配置文件进行安装。
第二方面,提供一种软件升级的装置,所述装置包括:
接收单元,用于接收对所述软件的功能升级的指示信息;
获得单元,用于向服务器发送请求,以获得所述软件的更新配置文件的参数信息,其中,所述参数信息至少包括软件安装包对应的版本号和多个DLL动态链接模块的更新版本号;
处理单元,用于确定所述版本号是否与所述软件的当前安装包的版本号相同,若不相同,则将所述软件包括的当前版本号与所述更新版本号不相同的DLL动态链接模块的更新版本号记录至待更新资源列表;
升级单元,用于向所述服务器发送资源请求,以获得所述待更新资源列表中DLL动态链接模块的更新版本号对应的文件,并对所述软件进行升级。
在一种可能的实施方式中,所述获得单元,还用于:
若接收对所述软件的预定功能升级的指示信息,则所述软件包括的当前版本号包括预定功能对应的DLL动态链接模块的当前版本号;其中,所述预定功能包括使用频率低于第一阈值的功能模块对应的功能和资源占用内存值大于第二阈值的功能模块对应的功能。
在一种可能的实施方式中,所述装置还包括记录单元,用于:
对记录至所述待更新列表的所述预定功能对应的DLL动态链接模块进行标注,以使下一次对所述预定功能对应的DLL动态链接模块进行更新时,根据所述标注信息确定是否对所述预定功能对应的DLL动态链接模块进行更新。
在一种可能的实施方式中,所述升级单元,具体用于:
下载所述待更新资源列表中DLL动态链接模块的更新版本号对应的更新功能模块文件,并启动所述更新功能模块文件中升级程序以截停所述软件正在运行的所述待更新资源列表中DLL动态链接模块的进程;
将下载的所述更新功能模块文件中与所述待更新资源列表中DLL动态链接模块对应的配置文件进行安装。
第三方面,提供一种终端设备,所述终端设备包括:
存储器,用于存储程序指令;
处理器,用于调用所述存储器中存储的程序指令,按照获得的程序指令执行第一方面中的任一方法包括的步骤。
第四方面,提供一种存储介质,该存储介质存储有计算机可执行指令,所述计算机可执行指令用于使计算机执行第一方面中的任一方法包括的步骤。
第五方面,提供一种计算机程序产品,当所述计算机程序产品在终端设备上运行时,使得终端设备能够执行第一方面中任一方法包括的步骤。
本发明的实施例提供的技术方案至少带来以下有益效果:
在本发明实施例中,当接收到对软件的功能升级的指示信息时,可以向服务器发送请求,获得该软件的更新配置文件的参数信息,具体的,参数信息至少包括软件安装包对应的版本号和多个DLL动态链接模块的更新版本号。然后可以先判断软件安装包对应的版本号是否与软件的当前安装包的版本号相同,若不相同,对软件包括的多个DLL动态链接模块当前版本号和更新版本号进行比较,并将当前版本号和更新版本号不同的多个DLL动态链接模块的更新版本号记录到待更新资源列表。进一步地,可以向服务器发送资源请求,以获得待更新资源列表中DLL动态链接模块的更新版本号对应的文件,并对软件进行升级。
在本发明实施例中,是仅一次性的向服务器请求将待更新资源列表中的DLL动态链接模块对应的文件,而不用多次向服务器请求软件包括的DLL动态链接模块对应的文件,从而在保证软件功能模块升级的基础上,提升软件升级的效率。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或通过实施本而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本发明。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例。
图1为本发明实施例中应用场景示意图;
图2为本发明实施例中应用场景的又一种示意图;
图3为本发明实施例中的软件升级的方法的流程图;
图4为本发明实施例中的软件升级的装置的结构框图;
图5为本发明实施例中的终端设备的结构示意图;
图6为本发明实施例中的终端设备的又一结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互任意组合。并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
本发明的说明书和权利要求书及上述附图中的术语“第一”和“第二”是用于区别不同对象,而非用于描述特定顺序。此外,术语“包括”以及它们任何变形,意图在于覆盖不排他的保护。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
本发明实施例中,“多个”可以表示至少两个,例如可以是两个、三个或者更多个,本发明实施例不做限制。
如前所述,现有技术中软件在升级时,一般需要向服务器发送多次资源请求来进行软件的升级更新,从而导致现有的软件升级效率较低。
鉴于此,本发明实施例提供一种软件升级的方法,通过该方法可以确定出待升级的DLL(Dynamic Link Library,动态链接库)动态链接模块,然后将待升级的DLL动态链接模块对应记录在列表中,然后根据记录的列表向服务器发送资源请求信息,从而可以实现一次性的资源获取,进而提高软件升级的效率。
在介绍完本发明实施例的设计思想之后,下面对本发明实施例的技术方案能够适用的应用场景做一些简单介绍,需要说明的是,以下介绍的应用场景仅用于说明本发明实施例而非限定。在具体实施过程中,可以根据实际需要灵活地应用本发明实施例提供的技术方案。
请参见图1,在本发明实施例中,当终端设备例如图1中所示的智能手机、电脑等中的软件需要升级时,可以向与之对应的服务器进行资源获取,从而可以完成对软件的升级。
在本发明实施例中,为了更好的理解本发明实施例中提供的软件升级的方法,请参见图2,示出了本发明实施例中终端设备和服务器中关于软件的详细配置信息。
在具体的实施过程中,终端设备即终端设备例如PC机(personal computer,个人电脑)向服务器请求服务器端在特定区域保存的相应的终端设备软件文件,终端设备对本地版本配置文件和服务器相应的版本配置文件进行内容检测,然后可以根据检测结果,向服务器申请资源,从而满足终端设备的软件升级的需要。
在具体的升级过程中,用到的文件有:升级配置文件、软件安装包、升级模块,其中升级模块中包含升级程序upgrade.exe、主程序app.exe、功能模块DLL动态链接库。
在具体的实施过程中,升级配置文件(version.ini)用来进行服务区中软件的版本的检测,升级配置文件用于表征目标服务器上最新的软件版本信息,终端设备中包括的配置文件用于表征终端设备最新的软件版本信息。升级配置文件如下:
[APP_Version];
SetupVersion=2.4.6.54321;
[Module_Version];
upgrade.exe=2.0.0.620005;
APP.exe=2.0.0.2108335;
moduleA.dll=3.42.2.42216;
moduleB.dll=3.5.0.40811;
moduleC.dll=2.0.0.210945;
moduleX.dll=xxxxxxx。
其中,APP_Version(application_Version,应用程序版本)中包括的SetupVersion对应的值用于表征终端设备的软件安装包PCAPP.EXE的版本号;Module_Version模组版本中包括的upgrade.exe对应的值是升级程序的版本号;Module_Version模组版本段下app.exe和*.dll(例如mouduleA.dll=3.42.2.42216)处于版本检测的同一级别。其中,app.exe用于表征终端设备的启动程序,*.dll用于表征终端设备程序用到的功能动态链接库。
在本发明实施例中,仅在配置文件和升级配置文件中的SetupVersion的值相同的情况下,才可以对app.exe和某些*.dll进行检测。具体的,一些*.dll在程序运行的某个时间,用户启动某些特定功能时才会使用到。
具体的,软件安装包PCAPP.EXE可以理解为从服务器下载的终端设备安装包程序。终端设备下载完成后,终端设备在接收到用户进行的操作,例如点击运行按钮,以及使用默认安装路径或选择安装路径,终端设备可以根据进行的操作,将下载的程序安装到终端设备的某个目录,例如:C:\Program Files(x86)\PCAPP目录。在PCAPP目录下,会有该终端设备程序运行所必须的所有文件,具体包括:升级配置文件、升级程序upgrade.exe、终端设备启动程序、各功能动态库DLL模块对应的文件和其它文件。
如图3所示,为本发明实施例提供的软件升级的方法的流程示意图,该方法例如可以由图1或图2所示的终端设备来执行,下面对本发明实施例的方法流程进行介绍。
步骤301:接收对软件的功能升级的指示信息。
在本发明实施例中,当用户希望对某一软件进行升级时,可以通过终端设备上的桌面或者开始菜单栏中软件的快捷方式等方式启动该软件,从而终端设备可以接收到对软件的功能升级的指示信息。
在具体的实施过程中,若用户通过终端设备上的桌面或者开始菜单栏中软件的快捷方式等方式启动该软件时,则终端设备可以接收到对软件的基础功能升级的指示信息。若用户通过终端设备上的桌面或者开始菜单栏中软件的快捷方式等方式启动该软件,且进一步地启动该软件的预定功能时,则终端设备可以接收到对软件的预定功能升级的指示信息。
在本发明实施例中,软件的预定功能包括使用频率低于第一阈值的功能模块对应的功能和资源占用内存值大于第二阈值的功能模块对应的功能。也就是说,在本发明实施例中,将基础功能和预定功能是分开触发升级,这样的方式,一方面可以减少终端中软件内存的占用,另一方面也可以极大的人提高软件升级的效率。
步骤302:向服务器发送请求,以获得软件的更新配置文件的参数信息,其中,参数信息至少包括软件安装包对应的版本号和多个DLL动态链接模块的更新版本号。
在本发明实施例中,当接收对软件的功能升级的指示信息后,可以向服务器发送请求,从而可以获得软件的更新配置文件的参数信息,其中,参数信息至少包括软件安装包对应的版本号和多个DLL动态链接模块的更新版本号。
在具体的实施过程中,若接收到对软件的基础功能升级的指示信息,则向服务器发送请求,获得软件的更新配置文件的参数信息包括软件安装包对应的版本号和所有基础功能对应的DLL动态链接模块。
在具体的实施过程中,若接收到对软件的预定功能升级的指示信息,则向服务器发送请求,获得软件的更新配置文件的参数信息包括软件安装包对应的版本号和预定功能对应的DLL动态链接模块的当前版本号。
步骤303:确定版本号是否与软件的当前安装包的版本号相同,若不相同,则将软件包括的当前版本号与更新版本号不相同的DLL动态链接模块的更新版本号记录至待更新资源列表。
在本发明实施例中,首先可以将终端设备中软件安装包的版本号与更配置文件中的软件安装包的版本号进行比较,即判断终端设备中软件的SetupVersion的值与服务器中软件的SetupVersion的值是否一致。进一步地,终端设备中软件的SetupVersion的值与服务器中软件的SetupVersion的值一致时,则继续比较待比较的DLL动态链接模块的版本号是否相同。
在具体的实施过程中,若是对基础功能进行升级,则可以在终端设备中软件的SetupVersion的值与服务器中软件的SetupVersion的值相同时,继续将终端设备中DLL动态链接库中所有基础功能对应的DLL动态链接模块的版本号和服务器中软件的基础功能对应的DLL动态链接模块的更新版本号。若是对预定功能升级,则可以将终端设备中预定功能对应的DLL动态链接模块的版本号和服务器中软件的预定功能对应的DLL动态链接模块的更新版本号进行比较。
在本发明实施例中,当确定待比较的DLL动态链接模块对应的当前版本号和更新版本号不相同时,则可以将其记录到待申请资源列表中,并修改客户端版本配置文件中待比较的DLL动态链接模块对应的当前版本号为服务器中的更新版本号对应的值,直到比较完待比较的所有DLL动态链接模块的版本号,即在待申请列表中保存DLL动态链接模块的更新版本号。
在本发明实施例中,当确定预定功能对应的DLL动态链接模块的版本号和服务器中软件的预定功能对应的DLL动态链接模块的更新版本号不相同时,则可以对记录至待更新列表的预定功能对应的DLL动态链接模块的版本号进行标注,以使下一次对预定功能对应的DLL动态链接模块进行更新时,根据之前的标注确定是否对预定功能对应的DLL动态链接模块进行更新。
在具体的实施过程中,当对更新后的预定功能对应的动态链接模块再次进行更新检测时,可以仅检测对更新的预定功能对应的动态链接模块的标注信息,这样的方式,可以更快速的完成对预定功能模块更新信息的确认,从而提高软件的升级效率。
步骤304:向服务器发送资源请求,以获得待更新资源列表中DLL动态链接模块的更新版本号对应的文件,并对软件进行升级。
在本发明实施例中,在版本比较完成后,终端设备可以向服务器发送资源请求,该请求中包含待申请资源列表中记录的所有DLL动态链接模块的更新版本号,从而可以获得待申请资源列表中记录的所有DLL动态链接模块的更新版本号对应的文件。具体的,可以将请求到的所有DLL动态链接模块的更新版本号对应的文件,放在软件安装目录下新建的某一目录下。
在具体的实施过程中,可以下载待更新资源列表中DLL动态链接模块的更新版本号对应的更新功能模块文件,并启动更新功能模块文件中升级程序以截停软件正在运行的待更新资源列表中DLL动态链接模块的进程,然后将下载的更新功能模块文件中与待更新资源列表中DLL动态链接模块对应的配置文件进行安装,从而实现对软件的升级。
在本发明实施例中,当接收到对软件的功能升级的指示信息时,可以向服务器发送请求,获得该软件的更新配置文件的参数信息,具体的,参数信息至少包括软件安装包对应的版本号和多个DLL动态链接模块的更新版本号。然后可以先判断软件安装包对应的版本号是否与软件的当前安装包的版本号相同,若不相同,对软件包括的多个DLL动态链接模块当前版本号和更新版本号进行比较,并将当前版本号和更新版本号不同的多个DLL动态链接模块的更新版本号记录到待更新资源列表。进一步地,可以向服务器发送资源请求,以获得待更新资源列表中DLL动态链接模块的更新版本号对应的文件,并对软件进行升级。
在本发明实施例中,是仅一次性的向服务器请求将待更新资源列表中的DLL动态链接模块对应的文件,而不是多次向服务器请求软件包括的DLL动态链接模块对应的文件,即减少了连接建立的次数,从而在保证软件功能模块升级的基础上,提升软件升级的效率。
进一步地,本发明实施例中还提出了将预定功能和基础功能进行分别对应升级的技术方案,这样的方式,节省了部分功能模块的检测时间,从而可以提升软件的升级效率。此外,还可以降低了终端设备中软件的内存的存储量,提升用户的使用体验。
基于同一发明构思,本发明实施例提供了一种软件升级的装置,该软件升级的装置能够实现前述的软件升级的方法对应的功能。该软件升级的装置可以是硬件结构、软件模块、或硬件结构加软件模块。该软件升级的装置可以由芯片系统实现,芯片系统可以由芯片构成,也可以包含芯片和其他分立器件。请参见图4所示,该软件升级的装置包括接收单元401、获得单元402、处理单元403以及升级单元404。其中:
接收单元401,用于接收对所述软件的功能升级的指示信息;
获得单元402,用于向服务器发送请求,以获得所述软件的更新配置文件的参数信息,其中,所述参数信息至少包括软件安装包对应的版本号和多个DLL动态链接模块的更新版本号;
处理单元403,用于确定所述版本号是否与所述软件的当前安装包的版本号相同,若不相同,则将所述软件包括的当前版本号与所述更新版本号不相同的DLL动态链接模块的更新版本号记录至待更新资源列表;
升级单元404,用于向所述服务器发送资源请求,以获得所述待更新资源列表中DLL动态链接模块的更新版本号对应的文件,并对所述软件进行升级。
在一种可能的实施方式中,所述获得单元402,还用于:
若接收对所述软件的预定功能升级的指示信息,则所述软件包括的当前版本号包括预定功能对应的DLL动态链接模块的当前版本号;其中,所述预定功能包括使用频率低于第一阈值的功能模块对应的功能和资源占用内存值大于第二阈值的功能模块对应的功能。
在一种可能的实施方式中,所述装置还包括记录单元,用于:
对记录至所述待更新列表的所述预定功能对应的DLL动态链接模块进行标注,以使下一次对所述预定功能对应的DLL动态链接模块进行更新时,根据所述标注信息确定是否对所述预定功能对应的DLL动态链接模块进行更新。
在一种可能的实施方式中,所述升级单元404,具体用于:
下载所述待更新资源列表中DLL动态链接模块的更新版本号对应的更新功能模块文件,并启动所述更新功能模块文件中升级程序以截停所述软件正在运行的所述待更新资源列表中DLL动态链接模块的进程;
将下载的所述更新功能模块文件中与所述待更新资源列表中DLL动态链接模块对应的配置文件进行安装。
前述的如图3所示软件升级的方法的实施例涉及的各步骤的所有相关内容均可以援引到本发明实施例中的软件升级的装置所对应的功能模块的功能描述,在此不再赘述。
本发明实施例中对单元的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,另外,在本发明各个实施例中的各功能单元可以集成在一个处理器中,也可以是单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
基于同一发明构思,本发明实施例还提供一种终端设备的示意图,如图5所示,本发明实施例中的终端设备包括至少一个处理器501,以及与至少一个处理器501连接的存储器502和通信接口503,其中,该通信接口503可以是图1中的I/O接口的总称。本发明实施例中不限定处理器501与存储器502之间的具体连接介质,图5中是以处理器501和存储器502之间通过总线500连接为例,总线500在图5中以粗线表示,其它部件之间的连接方式,仅是进行示意性说明,并不引以为限。总线500可以分为地址总线、数据总线、控制总线等,为便于表示,图5中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
在本发明实施例中,存储器502存储有可被至少一个处理器501执行的指令,至少一个处理器501通过执行存储器502存储的指令,可以执行前述的软件升级的方法中所包括的步骤。
其中,处理器501是终端设备的控制中心,可以利用各种接口和线路连接整个故障检测设备的各个部分,通过运行或执行存储在存储器502内的指令以及调用存储在存储器502内的数据,计算设备的各种功能和处理数据,从而对计算设备进行整体监控。可选的,处理器501可包括一个或多个处理单元,处理器501可集成应用处理器和调制解调处理器,其中,处理器501主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器501中。在一些实施例中,处理器501和存储器502可以在同一芯片上实现,在一些实施例中,它们也可以在独立的芯片上分别实现。
处理器501可以是通用处理器,例如中央处理器(CPU)、数字信号处理器、专用集成电路、现场可编程门阵列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件,可以实现或者执行本发明实施例中公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
存储器502作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块。存储器502可以包括至少一种类型的存储介质,例如可以包括闪存、硬盘、多媒体卡、卡型存储器、随机访问存储器(Random AccessMemory,RAM)、静态随机访问存储器(Static Random Access Memory,SRAM)、可编程只读存储器(Programmable Read Only Memory,PROM)、只读存储器(Read Only Memory,ROM)、带电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,EEPROM)、磁性存储器、磁盘、光盘等等。存储器502是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。本发明实施例中的存储器502还可以是电路或者其它任意能够实现存储功能的装置,用于存储程序指令和/或数据。通信接口503是能够用于进行通信的传输接口,可以通过通信接口503接收数据或者发送数据。
参见图6所示的终端设备的进一步地的结构示意图,该终端设备还包括帮助终端设备内的各个器件之间传输信息的基本输入/输出系统(I/O系统)601、用于存储操作系统602、应用程序603和其他程序模块604的大容量存储设备605。
基本输入/输出系统601包括有用于显示信息的显示器606和用于用户输入信息的诸如鼠标、键盘之类的输入设备607。其中显示器606和输入设备607都通过连接到系统总线500的基本输入/输出系统601连接到处理器501。所述基本输入/输出系统601还可以包括输入输出控制器以用于接收和处理来自键盘、鼠标、或电子触控笔等多个其他设备的输入。类似地,输入输出控制器还提供输出到显示屏、打印机或其他类型的输出设备。
所述大容量存储设备605通过连接到系统总线500的大容量存储控制器(未示出)连接到处理器501。所述大容量存储设备605及其相关联的计算机可读介质为该服务器包提供非易失性存储。也就是说,大容量存储设备605可以包括诸如硬盘或者CD-ROM驱动器之类的计算机可读介质(未示出)。
根据本发明的各种实施例,该计算设备包还可以通过诸如因特网等网络连接到网络上的远程计算机运行。也即该计算设备可以通过连接在所述系统总线500上的通信接口503连接到网络608,或者说,也可以使用通信接口503来连接到其他类型的网络或远程计算机系统(未示出)。
在示例性实施例中,还提供了一种包括指令的存储介质,例如包括指令的存储器502,上述指令可由装置的处理器501执行以完成上述方法。可选地,存储介质可以是非临时性计算机可读存储介质,例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
在一些可能的实施方式中,本发明提供的软件升级的方法的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在终端设备上运行时,所述程序代码用于使该终端设备执行本说明书上述描述的根据本发明各种示例性实施方式的软件升级的方法中的步骤。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本发明的其它实施方案。本发明旨在涵盖本发明的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本发明的一般性原理并包括本发明未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本发明的真正范围和精神由权利要求指出。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (10)
1.一种软件升级的方法,其特征在于,所述方法包括:
接收对所述软件的功能升级的指示信息;
向服务器发送请求,以获得所述软件的更新配置文件的参数信息,其中,所述参数信息至少包括软件安装包对应的版本号和多个DLL动态链接模块的更新版本号;
确定所述版本号是否与所述软件的当前安装包的版本号相同,若不相同,则将所述软件包括的当前版本号与所述更新版本号不相同的DLL动态链接模块的更新版本号记录至待更新资源列表;
向所述服务器发送资源请求,以获得所述待更新资源列表中DLL动态链接模块的更新版本号对应的文件,并对所述软件进行升级。
2.如权利要求1所述的方法,其特征在于,若接收对所述软件的预定功能升级的指示信息,则所述软件包括的当前版本号包括预定功能对应的DLL动态链接模块的当前版本号;其中,所述预定功能包括使用频率低于第一阈值的功能模块对应的功能和资源占用内存值大于第二阈值的功能模块对应的功能。
3.如权利要求2所述的方法,其特征在于,所述方法还包括:
对记录至所述待更新列表的所述预定功能对应的DLL动态链接模块进行标注,以使下一次对所述预定功能对应的DLL动态链接模块进行更新时,根据所述标注信息确定是否对所述预定功能对应的DLL动态链接模块进行更新。
4.如权利要求1所述的方法,其特征在于,向所述服务器发送资源请求,以获得所述待更新资源列表中DLL动态链接模块的更新版本号对应的文件,并对所述软件进行升级,包括:
下载所述待更新资源列表中DLL动态链接模块的更新版本号对应的更新功能模块文件,并启动所述更新功能模块文件中升级程序以截停所述软件正在运行的所述待更新资源列表中DLL动态链接模块的进程;
将下载的所述更新功能模块文件中与所述待更新资源列表中DLL动态链接模块对应的配置文件进行安装。
5.一种软件升级的装置,其特征在于,所述软件升级的装置包括:
接收单元,用于接收对所述软件的功能升级的指示信息;
获得单元,用于向服务器发送请求,以获得所述软件的更新配置文件的参数信息,其中,所述参数信息至少包括软件安装包对应的版本号和多个DLL动态链接模块的更新版本号;
处理单元,用于确定所述版本号是否与所述软件的当前安装包的版本号相同,若不相同,则将所述软件包括的当前版本号与所述更新版本号不相同的DLL动态链接模块的更新版本号记录至待更新资源列表;
升级单元,用于向所述服务器发送资源请求,以获得所述待更新资源列表中DLL动态链接模块的更新版本号对应的文件,并对所述软件进行升级。
6.如权利要求5所述的装置,其特征在于,所述获得单元,还用于:
若接收对所述软件的预定功能升级的指示信息,则所述软件包括的当前版本号包括预定功能对应的DLL动态链接模块的当前版本号;其中,所述预定功能包括使用频率低于第一阈值的功能模块对应的功能和资源占用内存值大于第二阈值的功能模块对应的功能。
7.如权利要求5所述的装置,其特征在于,所述装置还包括记录单元,用于:
对记录至所述待更新列表的所述预定功能对应的DLL动态链接模块进行标注,以使下一次对所述预定功能对应的DLL动态链接模块进行更新时,根据所述标注信息确定是否对所述预定功能对应的DLL动态链接模块进行更新。
8.如权利要求5所述的装置,其特征在于,所述升级单元,具体用于:
下载所述待更新资源列表中DLL动态链接模块的更新版本号对应的更新功能模块文件,并启动所述更新功能模块文件中升级程序以截停所述软件正在运行的所述待更新资源列表中DLL动态链接模块的进程;
将下载的所述更新功能模块文件中与所述待更新资源列表中DLL动态链接模块对应的配置文件进行安装。
9.一种终端设备,其特征在于,所述终端设备包括:
存储器,用于存储程序指令;
处理器,用于调用所述存储器中存储的程序指令,按照获得的程序指令执行权利要求1-4任一所述的方法包括的步骤。
10.一种存储介质,其特征在于,所述存储介质存储有计算机可执行指令,所述计算机可执行指令用于使计算机执行权利要求1-4任一所述的方法包括的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010169739.0A CN111427596B (zh) | 2020-03-12 | 2020-03-12 | 一种软件升级的方法、装置及终端设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010169739.0A CN111427596B (zh) | 2020-03-12 | 2020-03-12 | 一种软件升级的方法、装置及终端设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111427596A true CN111427596A (zh) | 2020-07-17 |
CN111427596B CN111427596B (zh) | 2023-04-14 |
Family
ID=71553446
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010169739.0A Active CN111427596B (zh) | 2020-03-12 | 2020-03-12 | 一种软件升级的方法、装置及终端设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111427596B (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113094064A (zh) * | 2021-03-03 | 2021-07-09 | 深圳市晨北科技有限公司 | 网关软件模块升级方法、装置、设备及存储介质 |
CN113220315A (zh) * | 2021-06-02 | 2021-08-06 | 中国邮政储蓄银行股份有限公司 | 工具软件的安装、配置和激活的方法与装置 |
CN113326054A (zh) * | 2021-06-22 | 2021-08-31 | 广州博冠信息科技有限公司 | 软件部署方法和装置、计算机可读存储介质、电子设备 |
CN115208867A (zh) * | 2021-04-01 | 2022-10-18 | 丰田自动车株式会社 | 中心、分发控制方法以及非暂时性存储介质 |
CN115408031A (zh) * | 2022-09-29 | 2022-11-29 | 北京亚控科技发展有限公司 | 应用的更新方法及相关设备 |
CN116069353A (zh) * | 2022-11-30 | 2023-05-05 | 广州力麒智能科技有限公司 | 一种更新引导前置方法、装置、设备及存储介质 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102262544A (zh) * | 2010-05-24 | 2011-11-30 | 腾讯科技(深圳)有限公司 | 软件升级的方法和装置 |
CN103136013A (zh) * | 2011-12-01 | 2013-06-05 | 腾讯科技(深圳)有限公司 | 软件升级方法和系统 |
CN105335183A (zh) * | 2014-08-06 | 2016-02-17 | 乐视致新电子科技(天津)有限公司 | 一种软件升级方法及系统 |
CN105389182A (zh) * | 2015-11-02 | 2016-03-09 | 广州华多网络科技有限公司 | 一种软件升级方法及装置 |
CN108874436A (zh) * | 2018-06-13 | 2018-11-23 | 珠海市君天电子科技有限公司 | 一种软件升级方法、装置、终端设备及介质 |
CN109032637A (zh) * | 2018-07-17 | 2018-12-18 | 中国建设银行股份有限公司 | 基于framework框架的软件更新方法及装置 |
CN109388414A (zh) * | 2017-08-03 | 2019-02-26 | 合网络技术(北京)有限公司 | 软件升级方法及装置 |
CN109561118A (zh) * | 2017-09-26 | 2019-04-02 | 比亚迪股份有限公司 | 软件升级方法、装置、系统、存储介质、电子设备及车辆 |
-
2020
- 2020-03-12 CN CN202010169739.0A patent/CN111427596B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102262544A (zh) * | 2010-05-24 | 2011-11-30 | 腾讯科技(深圳)有限公司 | 软件升级的方法和装置 |
CN103136013A (zh) * | 2011-12-01 | 2013-06-05 | 腾讯科技(深圳)有限公司 | 软件升级方法和系统 |
US20140304697A1 (en) * | 2011-12-01 | 2014-10-09 | Tencent Technology (Shenzhen) Company Limited | Method and system for upgrading software |
CN105335183A (zh) * | 2014-08-06 | 2016-02-17 | 乐视致新电子科技(天津)有限公司 | 一种软件升级方法及系统 |
CN105389182A (zh) * | 2015-11-02 | 2016-03-09 | 广州华多网络科技有限公司 | 一种软件升级方法及装置 |
CN109388414A (zh) * | 2017-08-03 | 2019-02-26 | 合网络技术(北京)有限公司 | 软件升级方法及装置 |
CN109561118A (zh) * | 2017-09-26 | 2019-04-02 | 比亚迪股份有限公司 | 软件升级方法、装置、系统、存储介质、电子设备及车辆 |
CN108874436A (zh) * | 2018-06-13 | 2018-11-23 | 珠海市君天电子科技有限公司 | 一种软件升级方法、装置、终端设备及介质 |
CN109032637A (zh) * | 2018-07-17 | 2018-12-18 | 中国建设银行股份有限公司 | 基于framework框架的软件更新方法及装置 |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113094064A (zh) * | 2021-03-03 | 2021-07-09 | 深圳市晨北科技有限公司 | 网关软件模块升级方法、装置、设备及存储介质 |
CN115208867A (zh) * | 2021-04-01 | 2022-10-18 | 丰田自动车株式会社 | 中心、分发控制方法以及非暂时性存储介质 |
CN113220315A (zh) * | 2021-06-02 | 2021-08-06 | 中国邮政储蓄银行股份有限公司 | 工具软件的安装、配置和激活的方法与装置 |
CN113220315B (zh) * | 2021-06-02 | 2024-05-24 | 中国邮政储蓄银行股份有限公司 | 工具软件的安装、配置和激活的方法与装置 |
CN113326054A (zh) * | 2021-06-22 | 2021-08-31 | 广州博冠信息科技有限公司 | 软件部署方法和装置、计算机可读存储介质、电子设备 |
CN115408031A (zh) * | 2022-09-29 | 2022-11-29 | 北京亚控科技发展有限公司 | 应用的更新方法及相关设备 |
CN115408031B (zh) * | 2022-09-29 | 2023-09-05 | 北京亚控科技发展有限公司 | 应用的更新方法及相关设备 |
CN116069353A (zh) * | 2022-11-30 | 2023-05-05 | 广州力麒智能科技有限公司 | 一种更新引导前置方法、装置、设备及存储介质 |
CN116069353B (zh) * | 2022-11-30 | 2024-02-02 | 广州力麒智能科技有限公司 | 一种更新引导前置方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111427596B (zh) | 2023-04-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111427596B (zh) | 一种软件升级的方法、装置及终端设备 | |
CN105867947B (zh) | 预置应用程序升级后的数据处理方法及装置 | |
EP3333704B1 (en) | Method and apparatus for repairing kernel vulnerability | |
CN105786538B (zh) | 基于安卓系统的软件升级方法和装置 | |
US20130227259A1 (en) | Client terminal, operating system providing apparatus, and methods for supporting multiple operating systems | |
CN110597542B (zh) | 软件自动ota升级方法及装置、电子设备 | |
CN106502646A (zh) | 应用的页面信息处理方法及装置 | |
CN106502717B (zh) | 应用程序运行方法及装置 | |
WO2017186066A1 (zh) | 软件管理方法及装置 | |
CN111782339A (zh) | 一种容器创建方法、装置、电子设备及存储介质 | |
CN112988169A (zh) | 应用安装方法、装置、终端设备、服务器及存储介质 | |
CN109117153B (zh) | 应用程序的处理方法、装置、终端和存储介质 | |
CN110489138B (zh) | 一种应用更新方法、装置和存储介质 | |
CN113656107A (zh) | 移动应用的加载方法、装置及电子设备 | |
CN111694585A (zh) | 替换系统分区文件的方法、系统、终端和存储介质 | |
CN110113391B (zh) | 一种客户端上线方法、装置及一种客户端运行方法、装置 | |
CN106708569B (zh) | 一种跨线列车中vobc配置文件的热加载方法及装置 | |
CN111400091B (zh) | 恢复出厂设置方法、恢复出厂设置装置及移动终端 | |
CN109901849B (zh) | 应用程序安装方法、装置、电子设备及存储介质 | |
CN112286414A (zh) | 信息显示方法、装置、电子设备及存储介质 | |
US20230065440A1 (en) | Method and apparatus for managing application | |
CN112905072B (zh) | 应用程序的处理方法、装置及电子设备 | |
CN113282363A (zh) | 一种优化混合app的方法及装置 | |
CN114489698A (zh) | 应用程序安装方法和装置 | |
CN112379943A (zh) | Electron应用程序的插件应用方法及装置、存储介质 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |