CN109976790A - 应用更新方法、装置、终端及存储介质 - Google Patents
应用更新方法、装置、终端及存储介质 Download PDFInfo
- Publication number
- CN109976790A CN109976790A CN201910252199.XA CN201910252199A CN109976790A CN 109976790 A CN109976790 A CN 109976790A CN 201910252199 A CN201910252199 A CN 201910252199A CN 109976790 A CN109976790 A CN 109976790A
- Authority
- CN
- China
- Prior art keywords
- objective function
- function module
- module
- file destination
- state
- 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
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
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是本发明实施例提供的另一种应用更新方法的应用场景图;
图4是本发明实施例提供的另一种应用更新方法的流程示意图;
图5是本发明实施例提供的一种应用更新装置的结构示意图;
图6是本发明实施例提供的一种终端的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行描述。
请参阅图1,为本发明实施例提供的一种应用更新方法的流程示意图。该方法可以应用于终端,该终端可以为智能手机、平板电脑、台式电脑、笔记本电脑等可以安装应用的智能终端。具体地,该方法可以包括以下步骤:
S101、在对目标应用中的目标功能模块进行更新时,判断所述目标功能模块对应的待升级的目标文件是否处于被占用状态。
其中,该目标应用为终端中的任一应用,或为终端中需要更新的任一应用,或为终端需要更新多个应用中更新优先级最高的应用。该目标功能模块为该目标应用中需要更新的任一功能模块,或为该目标应用需要更新的多个功能模块中使用频率最多的功能模块,或为该目标应用需要更新的多个功能模块中平均升级时长最短的功能模块。功能模块指目标应用的子功能。功能模块可以包括程序指令、运行数据等信息。该待升级的目标文件为待升级的任一个或多个文件。
在一个实施例中,终端判断该目标功能模块对应的待升级的目标文件是否处于被占用状态,可以包括:终端按照预设规则判断该目标功能模块对应的待升级的目标文件是否处于被占用状态。
在一个实施例中,该预设规则包括根据文件流设置的规则,终端按照预设规则判断该目标功能模块对应的待升级的目标文件是否处于被占用状态,可以包括:终端按照预设方式打开该目标文件,判断该目标文件能被打开;若该目标文件不能被打开,则确定该目标文件处于被占用状态;若该目标文件能被打开,则确定该目标文件处于未被占用状态。其中,该预设方式包括只读方式和/或独占方式。
在一个实施例,该预设规则包括根据目标函数/目标接口设置的规则,终端按照预设规则判断该目标功能模块对应的待升级的目标文件是否处于被占用状态,可以包括:终端可以调用目标函数/目标接口以用于判断该目标文件是否被占用,当接收到该目标函数/目标接口返回的指示被占用的值时,确定该目标文件处于被占用状态;当接收到该目标函数/目标接口返回的指示未被占用的值时,确定该目标文件处于未被占用状态。
在一个实施例中,该预设规则包括根据文件内容设置的第一规则,终端按照预设规则判断该目标功能模块对应的待升级的目标文件是否处于被占用状态,可以包括;在第一时间获取该目标文件的第一文件内容,并在第二时间获取该目标文件的第二文件内容;分别计算第一文件内容的哈希值和第二文件内容的哈希值;当确定该第一文件内容的哈希值与该第二文件内容的哈希值不同时,确定该目标文件处于占用状态。其中,该第二时间和第一时间的差值在预设时间范围内,如2s内。
在一个实施例中,该预设规则包括根据文件内容设置的第二规则,终端按照预设规则判断该目标功能模块对应的待升级的目标文件是否处于被占用状态,可以包括:对该目标文件进行处理,当检测到对该目标文件进行处理失败的提示信息时,确定该目标文件处于被占用状态。其中,该对该目标文件进行处理的步骤包括但不限于对该目标文件进行修改处理,如更换文件名、对该目标文件进行加密处理、对该目标文件进行删除处理等过程。
在一个实施例中,当确定该目标文件不处于被占用状态时,终端可以利用该升级文件替换该目标文件。不被占用时,直接利用升级文件替换该目标文件,可以达到在用户无感知的情况下对该目标功能模块的目的,提升了用户体验。
S102、当确定所述目标文件处于被占用状态,且所述目标功能模块对应的显示界面处于预设状态时,关闭所述目标功能模块,并记录所述目标功能模块的界面状态数据。
其中,该预设状态包括以下任一种状态:该显示界面处于被遮挡状态、该显示界面处于被遮挡状态且该显示界面被遮挡的区域满足预设条件、该显示界面处于最小化状态、该显示界面在预设时间段内处于未***作的状态。其中,该界面状态数据可以包括以下任意一项或多项:显示方式、显示位置、界面数据,如界面操作数据等数据。该显示方式包括但不限于以下任意一种:最小化、最大化、缩小比例。
在一个实施例中,该显示界面被遮挡的区域满足预设条件。可以包括:该显示界面被遮挡的区域的面积与该显示界面所在区域的面积的比值大于第一预设值,例如该预设值可以为1/3。该显示界面所在区域可以是根据上述显示位置确定的。
在一个实施例中,该显示界面被遮挡的区域满足预设条件。可以包括:该显示界面被遮挡的区域包括的主体内容所在区域的面积与该显示界面包括的主体内容所在区域的面积的比值大于第二预设值。其中,该主体内容可以为主要内容。考虑到界面在一定情况下,除了展示用户所期望的主体内容,还会展示一些其它内容,如广告栏或空白栏,于是可能会出现显示界面即使被遮挡,用户仍在浏览主体内容的情况,此时通过上述对主体内容的判断过程,可以提高判定是否关闭目标功能模块准确度。
在一个实施例中,当确定该目标文件处于被占用状态、该目标功能模块对应的显示界面处于预设状态,且终端在预设区域范围内未识别到用户时,终端执行关闭该目标功能模块的步骤。其中,终端判断在预设区域范围内是否识别到用户,可以通过采用以下任意一个或多个方式实现:红外感应技术,声音检测技术、人脸识别技术。例如,若采用红外感应技术,则终端可以设置有红外感应装置;若采用声音检测技术,则终端可以设置有声音采集装置;若采用人脸识别技术,则终端可以设置有人脸图像采集装置。
在一个实施例中,终端关闭该目标功能模块,可以包括:终端关闭该目标功能模块的进程。或,终端关闭该目标功能模块,还可以包括:终端将该目标功能模块从所在的进程中解绑。由于一个进程可能包括多个模块,因此为了能够有效地升级该目标功能模块,可以将该目标功能模块从所在的进程中解绑。
在一个实施例中,终端还可以在将目标功能模块从所在的进程中解绑时,记录该目标功能模块所在的进程,以便后续执行启动该目标功能模块的步骤。
S103、获取所述目标文件对应的升级文件,并利用所述升级文件替换所述目标文件,启动所述目标功能模块,并将所述升级文件对应的所述目标功能模块恢复至所述界面状态数据指示的功能状态。
为了快速升级目标功能模块,并将该目标功能模块恢复至原有功能状态,以达到用户无感知升级的目的,终端可以获取该目标文件对应的升级文件,并利用该升级文件替换该目标文件,启动该目标功能模块,并将该升级文件对应的该目标功能模块恢复至该界面状态数据指示的功能状态。在一个实施例中,该目标文件对应的升级文件可以是终端从该目标应用对应的服务器获取的。
在一个实施例中,终端启动该目标功能模块,可以包括:终端启动该目标功能模块的进程。或,终端启动该目标功能模块,还可以包括:终端在记录的该目标功能模块所在的进程中重新加载该目标功能模块。
在一个实施例中,本发明实施例所述的应用可以替换为软件,目标应用可以替换为目标软件。本发明实施例所述的更新可以理解为升级。
可见,图1所示的实施例中,终端在对目标应用中的目标功能模块进行更新时,若确定该目标功能模块对应的待升级的目标文件处于被占用状态,且该目标功能模块对应的显示界面处于预设状态,则可以关闭该目标功能模块,并记录该目标功能模块的界面状态数据;终端可以获取该目标文件对应的升级文件,并利用该升级文件替换该目标文件,启动该目标功能模块,并将该目标功能模块恢复至该界面状态数据指示的功能状态,使得终端无需重启目标应用,便可以在用户无感知的情况下将目标应用升级到最新功能,实现了对应用中各功能模块的自动化智能化升级过程。
为了更清楚地阐述本发明实施例,下面将结合具体的应用场景对本发明实施例的应用更新方法进行阐述。请参见图2,是本发明实施例提供的一种应用更新方法的应用场景图。在该应用场景下,终端打开了安全应用,并启用了该安全应用的护眼模式功能,进入到护眼模式界面01。同时,终端还打开了视频应用,并进入到视频播放界面02正在播放该视频应用提供的视频1。终端可以在对安全应用中的护眼模式功能进行更新时,判断该护眼模式功能对应的待升级的目标文件是否处于被占用状态,当确定该目标文件处于被占用状态,且该护眼模式功能对应的护眼模式界面处于预设状态,如图2所示的被遮挡状态时,关闭该护眼模式功能,并记录该护眼模式功能的界面状态数据,终端可以获取该目标文件对应的升级文件,并利用该升级文件替换该目标文件,启动该护眼模式功能,并将该护眼模式功能恢复至该界面状态数据指示的功能状态。由图2可见,终端在升级了该护眼模式功能后,将该护眼模式界面01恢复到了关闭前的功能状态。再一个应用场景中,该护眼模式界面01可以包括新增的功能项。再一个应用场景中,该护眼模式界面01也可以显示在视频播放界面02的上一层。
在一个应用场景中,请参阅图3,是本发明实施例提供的另一种应用更新方法的场景示意图。考虑到终端当前显示的界面可能是动态变化的,例如终端在升级了护眼模式功能后可能出现如图3所示的已关闭视频播放界面02的情况,但无论终端当然显示的界面如何变化,终端仍可以采用上述方法将护眼模式功能恢复至该界面状态数据指示的功能状态。
请参阅图4,为本发明实施例提供的另一种应用更新方法的流程示意图。该方法可以应用于终端,该终端可以为智能手机、平板电脑、台式电脑、笔记本电脑等可以安装应用的智能终端。具体地,该方法可以包括以下步骤:
S401、当检测到目标应用存在多个功能模块需要更新时,确定每个功能模块的使用频率。
本发明实施例中,终端可以当检测到该目标应用存在多个功能模块需要更新时,确定每个功能模块的使用频率。
在一个实施例中,终端可以当检测到该目标应用包括的多个功能模块中每个功能模块对应的至少一个升级文件时,确定检测到该目标应用存在多个功能模块需要更新。该至少一个升级文件是由该目标应用对应的服务器发送的。
在一个实施例中,终端当接收到该目标应用对应的服务器返回的目标通知信息时,确定检测到该目标应用存在多个功能模块需要更新。其中,该目标通知信息指示了该目标应用包括的各功能模块中不为最新的版本号的多个功能模块,或指示了该目标应用包括各功能模块中需要更新的多个功能模块。
在一个实施例中,该目标通知信息可以携带该多个功能模块中每个功能模块对应的至少一个升级文件。
在一个实施例中,终端可以根据该目标通知信息返回确认更新指令至服务器,以触发该目标应用对应的服务器下发该多个功能模块中每个功能模块对应的至少一个升级文件。
在一个实施例中,终端可以发送更新请求至该目标应用对应的服务器,该更新请求携带该目标应用包括的各功能模块的版本号,该更新请求用于请求服务器查询各功能模块的版本号是否为最新的版本号;终端当接收该目标应用对应的服务器根据该更新请求返回目标通知信息时,确定检测到该目标应用存在多个功能模块需要更新。
在一个实施例中,终端当检测到预设的多个应用需要更新时,确定每个应用的更新优先级;终端根据每个应用的更新优先级,从该多个应用中确定出更新优先级最高的应用;终端将该多个应用中更新优先级最高的应用确定为目标应用。其中,该更新优先级可以为用户预设的,或者是终端根据用户对每个应用的使用频率确定的。在一个实施例中,该使用频率可以是根据用户对每个应用的访问时间确定的。
在一个实施例中,终端可以在检测到预设的多个应用中的每个应用存在至少一个功能模块需要更新时,确定检测到该预设的多个应用需要更新。
在一个实施例中,终端当接收到预设的多个应用各自对应的服务器返回的指定通知信息时,确定检测到该预设的多个应用需要更新。其中,该指定通知信息指示了不为最新的版本号的应用,和/或指示了为最新版本号的应用中存在需要更新的至少一个功能模块的应用。
在一个实施例中,终端确定每个功能模块的使用频率,可以包括:终端根据记录的每个功能模块的访问时间,确定每个功能模块的使用频率。
S402、根据每个功能模块的使用频率,从所述多个功能模块中确定出使用频率最高的功能模块;
S403、将所述多个功能模块中使用频率最高的功能模块确定为目标功能模块以进行更新。
例如,该目标应用为应用1,应用1至少包括功能模块1、功能模块2、功能模块3,当检测到应用1中的功能模块1、功能模块2、功能模块3需要更新时,终端可以确定出功能模块1的使用频率为A、功能模块2的使用频率为B、功能模块3的使用频率为C,其中0<A<B<C,终端根据每个功能模块的使用频率,可以从这三个功能模块中确定出使用频率最高的功能模块3,并将功能模块3确定为目标功能模块以进行更新。
本发明实施例通过优先升级使用频率高的功能模块,不仅可以达到快速升级常用功能模块的目的,还可以在终端存储空间有限的情况下提高存储空间的利用率,解决存储空间,并且还可以在终端的数据流量有限的情况下为用户减少不必要的流量消耗。
S404、在对目标应用中的目标功能模块进行更新时,判断所述目标功能模块对应的待升级的目标文件是否处于被占用状态;
S405、当确定所述目标文件处于被占用状态,且所述目标功能模块对应的显示界面处于预设状态时,关闭所述目标功能模块,并记录所述目标功能模块的界面状态数据;
S406、获取所述目标文件对应的升级文件,并利用所述升级文件替换所述目标文件,启动所述目标功能模块,并将所述目标功能模块恢复至所述界面状态数据指示的功能状态。
其中,步骤S404-S406可参见图1实施例中的步骤S101-S103,本发明实施例在此不做赘述。
在一种可选的实施方式中,终端除了可以根据多个功能模块中每个功能模块的使用频率确定出目标功能之外,还可以根据每个功能模块的平均升级时长确定出目标功能模块。具体地,当检测到目标应用存在多个功能模块需要更新时,终端确定每个功能模块的平均升级时长;终端根据每个功能模块的平均升级时长,从该多个功能模块中确定出平均升级时长最短的功能模块;终端将该多个功能模块中平均升级时长最短的功能模块确定为目标功能模块以进行更新。终端通过优先升级平均升级时长最短的功能模块,可以在终端数据流量有限的情况下为用户升级减少不必要的流量消耗。
例如,该目标应用为应用1,应用1至少包括功能模块1、功能模块2、功能模块3,当检测到应用1中的功能模块1、功能模块2、功能模块3需要更新时,终端可以确定出功能模块1的平均升级时长为a、功能模块2的平均升级时长为b、功能模块3的平均升级时长为c,其中0<a<b<c,终端根据每个功能模块的平均升级时长,可以从这三个功能模块中确定出平均升级时长最短的功能模块1,并将功能模块1确定为目标功能模块以进行更新。
在一种可选的实施方式中,每个功能模块的平均升级时长,可以是终端对每个功能模块的历史升级时长进行均值计算得到的。该历史升级时长包括在指定时间范围内统计的至少一个升级时长。在一种可选的实施方式中,该升级时长可以是指在每次对相应功能模块进行更新的过程中,从关闭相应功能模块到重新启动相应功能模块之间的时间间隔,或还可以是指替换相应文件期间所花费的时长。
在一种可选的实施方式中,每个功能模块的平均升级时长,还可以是终端从该目标应用对应的服务器获取的。例如,每个功能模块的平均升级时长是服务器根据获取的终端对每个功能模块的历史升级时长,进行均值计算得到的,或还可以是该目标应用对应的服务器根据经验值得到的,例如可以是根据经验值结合每个功能模块的复杂度、数据量等参数估算出的。
在一种可选的实施方式中,终端获取升级判定信息,该升级判定信息包括该目标文件的平均升级时长、用户最近一次使用该目标功能模块的时间以及在预设时间范围内该用户对该目标功能模块的使用频率;终端根据该用户最近一次使用该目标功能模块的时间以及在预设时间范围内该用户对该目标功能模块的使用频率,判断该用户是否会在该平均升级时长内使用该目标功能模块;当确定该用户不会在该平均升级时长内使用该目标功能模块,终端执行该关闭该目标功能模块的步骤。通过升级判定信息判定是否关闭该目标功能模块,有利于提高判定是否关闭该目标功能模块的准确度,避免出现在用户可能使用该目标功能模块期间关闭该目标功能模块的情况。
在一个实施例中,该目标文件的平均升级时长可以为该目标功能模块的平均升级时长。
在一个实施例中,该目标文件的平均升级时长也可以是该目标应用对应的服务器根据经验值得到的,例如可以是根据经验值结合该目标文件的复杂度、数据量等参数估算出的。
可见,图4所示的实施例中,终端可以在目标应用存在多个功能模块需要更新时,按照每个功能模块的使用频率确定出优先更新的目标功能模块,不仅达到了快速升级常用功能模块的目的,还可以在终端存储空间有限的情况下提高存储空间的利用率,并且还可以在终端的数据流量有限的情况下为用户减少不必要的流量消耗。并且,终端在对目标应用中的目标功能模块进行更新时,若确定该目标功能模块对应的待升级的目标文件处于被占用状态,且该目标功能模块对应的显示界面处于预设状态,则可以关闭该目标功能模块,并记录该目标功能模块的界面状态数据;终端可以获取该目标文件对应的升级文件,并利用该升级文件替换该目标文件,启动该目标功能模块,并将该目标功能模块恢复至该界面状态数据指示的功能状态,使得终端无需重启目标应用,便可以在用户无感知的情况下将目标应用升级到最新功能,实现了对应用中各功能模块的自动化智能化升级过程。
请参阅图5,为本发明实施例提供的一种应用更新装置的结构示意图。该装置可以应用于终端。具体地,该装置可以包括:
第一处理单元501,用于在对目标应用中的目标功能模块进行更新时,判断所述目标功能模块对应的待升级的目标文件是否处于被占用状态;
第二处理单元502,用于当确定所述目标文件处于被占用状态,且所述目标功能模块对应的显示界面处于预设状态时,关闭所述目标功能模块,并记录所述目标功能模块的界面状态数据;
第三处理单元503,用于获取所述目标文件对应的升级文件,并利用所述升级文件替换所述目标文件,启动所述目标功能模块,并将所述目标功能模块恢复至所述界面状态数据指示的功能状态。
在一种可选的实施方式中,第二处理单元502,还用于获取升级判定信息,所述升级判定信息包括所述目标文件的平均升级时长、用户最近一次使用所述目标功能模块的时间以及在预设时间范围内所述用户对所述目标功能模块的使用频率;根据所述用户最近一次使用所述目标功能模块的时间以及在预设时间范围内所述用户对所述目标功能模块的使用频率,判断所述用户是否会在所述平均升级时长内使用所述目标功能模块;当确定所述用户不会在所述平均升级时长内使用所述目标功能模块,执行所述关闭所述目标功能模块的操作。
在一种可选的实施方式中,所述预设状态包括以下任一种状态:所述显示界面处于被遮挡状态、所述显示界面处于被遮挡状态且所述显示界面被遮挡的区域满足预设条件、所述显示界面处于最小化状态、所述显示界面在预设时间段内处于未***作的状态。
在一种可选的实施方式中,第一处理单元501,还用于在对目标应用中的目标功能模块进行更新时,判断所述目标功能模块对应的待升级的目标文件是否处于被占用状态之前,当检测到目标应用存在多个功能模块需要更新时,确定每个功能模块的使用频率;根据每个功能模块的使用频率,从所述多个功能模块中确定出使用频率最高的功能模块;将所述多个功能模块中使用频率最高的功能模块确定为目标功能模块以进行更新。
在一种可选的实施方式中,第一处理单元501,还用于在对目标应用中的目标功能模块进行更新时,判断所述目标功能模块对应的待升级的目标文件是否处于被占用状态之前,当检测到目标应用存在多个功能模块需要更新时,确定每个功能模块的平均升级时长;根据每个功能模块的平均升级时长,从所述多个功能模块中确定出平均升级时长最短的功能模块;将所述多个功能模块中平均升级时长最短的功能模块确定为目标功能模块以进行更新。
在一种可选的实施方式中,第一处理单元501,还用于当检测到预设的多个应用需要更新时,确定每个应用的更新优先级;根据每个应用的更新优先级,从所述多个应用中确定出更新优先级最高的应用;将所述多个应用中更新优先级最高的应用确定为目标应用。
在一种可选的实施方式中,第二处理单元502,还用于当确定所述目标文件不处于被占用状态时,利用所述升级文件替换所述目标文件。
可见,图5所示的实施例中,终端在对目标应用中的目标功能模块进行更新时,若确定该目标功能模块对应的待升级的目标文件处于被占用状态,且该目标功能模块对应的显示界面处于预设状态,则可以关闭该目标功能模块,并记录该目标功能模块的界面状态数据;终端可以获取该目标文件对应的升级文件,并利用该升级文件替换该目标文件,启动该目标功能模块,并将该目标功能模块恢复至该界面状态数据指示的功能状态,使得终端无需重启目标应用,便可以在用户无感知的情况下将目标应用升级到最新功能,实现了对应用中各功能模块的自动化智能化升级过程。
请参阅图6,为本发明实施例提供的一种终端的结构示意图。如图所示的本实施例中的终端可以包括:一个或多个处理器601;一个或多个输入设备602,一个或多个输出设备603和存储器604。上述处理器601、输入设备602、输出设备603和存储器604可以通过总线连接。存储器604用于存储计算机程序,所述计算机程序包括程序指令,处理器601用于执行存储器604存储的程序指令。其中,处理器601被配置用于调用所述程序指令执行:
在对目标应用中的目标功能模块进行更新时,判断所述目标功能模块对应的待升级的目标文件是否处于被占用状态;
当确定所述目标文件处于被占用状态,且所述目标功能模块对应的显示界面处于预设状态时,关闭所述目标功能模块,并记录所述目标功能模块的界面状态数据;
获取所述目标文件对应的升级文件,并利用所述升级文件替换所述目标文件,启动所述目标功能模块,并将所述目标功能模块恢复至所述界面状态数据指示的功能状态。
可选地,处理器601还被配置用于调用所述程序指令执行:
获取升级判定信息,所述升级判定信息包括所述目标文件的平均升级时长、用户最近一次使用所述目标功能模块的时间以及在预设时间范围内所述用户对所述目标功能模块的使用频率;
根据所述用户最近一次使用所述目标功能模块的时间以及在预设时间范围内所述用户对所述目标功能模块的使用频率,判断所述用户是否会在所述平均升级时长内使用所述目标功能模块;
当确定所述用户不会在所述平均升级时长内使用所述目标功能模块,执行所述关闭所述目标功能模块的操作。
可选地,所述预设状态包括以下任一种状态:所述显示界面处于被遮挡状态、所述显示界面处于被遮挡状态且所述显示界面被遮挡的区域满足预设条件、所述显示界面处于最小化状态、所述显示界面在预设时间段内处于未***作的状态。
可选地,处理器601被配置用于调用所述程序指令执行在对目标应用中的目标功能模块进行更新时,判断所述目标功能模块对应的待升级的目标文件是否处于被占用状态之前,还用于执行以下操作:
当检测到目标应用存在多个功能模块需要更新时,确定每个功能模块的使用频率;
根据每个功能模块的使用频率,从所述多个功能模块中确定出使用频率最高的功能模块;
将所述多个功能模块中使用频率最高的功能模块确定为目标功能模块以进行更新。
可选地,处理器601被配置用于调用所述程序指令执行在对目标应用中的目标功能模块进行更新时,判断所述目标功能模块对应的待升级的目标文件是否处于被占用状态之前,还用于执行以下操作:
当检测到目标应用存在多个功能模块需要更新时,确定每个功能模块的平均升级时长;
根据每个功能模块的平均升级时长,从所述多个功能模块中确定出平均升级时长最短的功能模块;
将所述多个功能模块中平均升级时长最短的功能模块确定为目标功能模块以进行更新。
可选地,处理器601还被配置用于调用所述程序指令执行:
当检测到预设的多个应用需要更新时,确定每个应用的更新优先级;
根据每个应用的更新优先级,从所述多个应用中确定出更新优先级最高的应用;
将所述多个应用中更新优先级最高的应用确定为目标应用。
可选地,处理器601还被配置用于调用所述程序指令执行:
当确定所述目标文件不处于被占用状态时,利用所述升级文件替换所述目标文件。
以上,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
Claims (10)
1.一种应用更新方法,其特征在于,包括:
在对目标应用中的目标功能模块进行更新时,判断所述目标功能模块对应的待升级的目标文件是否处于被占用状态;
当确定所述目标文件处于被占用状态,且所述目标功能模块对应的显示界面处于预设状态时,关闭所述目标功能模块,并记录所述目标功能模块的界面状态数据;
获取所述目标文件对应的升级文件,并利用所述升级文件替换所述目标文件,启动所述目标功能模块,并将所述目标功能模块恢复至所述界面状态数据指示的功能状态。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
获取升级判定信息,所述升级判定信息包括所述目标文件的平均升级时长、用户最近一次使用所述目标功能模块的时间以及在预设时间范围内所述用户对所述目标功能模块的使用频率;
根据所述用户最近一次使用所述目标功能模块的时间以及在预设时间范围内所述用户对所述目标功能模块的使用频率,判断所述用户是否会在所述平均升级时长内使用所述目标功能模块;
当确定所述用户不会在所述平均升级时长内使用所述目标功能模块,执行所述关闭所述目标功能模块的步骤。
3.根据权利要求1或2所述的方法,其特征在于,所述预设状态包括以下任一种状态:所述显示界面处于被遮挡状态、所述显示界面处于被遮挡状态且所述显示界面被遮挡的区域满足预设条件、所述显示界面处于最小化状态、所述显示界面在预设时间段内处于未***作的状态。
4.根据权利要求3所述的方法,其特征在于,所述在对目标应用中的目标功能模块进行更新时,判断所述目标功能模块对应的待升级的目标文件是否处于被占用状态之前,所述方法还包括:
当检测到目标应用存在多个功能模块需要更新时,确定每个功能模块的使用频率;
根据每个功能模块的使用频率,从所述多个功能模块中确定出使用频率最高的功能模块;
将所述多个功能模块中使用频率最高的功能模块确定为目标功能模块以进行更新。
5.根据权利要求3所述的方法,其特征在于,所述在对目标应用中的目标功能模块进行更新时,判断所述目标功能模块对应的待升级的目标文件是否处于被占用状态之前,所述方法还包括:
当检测到目标应用存在多个功能模块需要更新时,确定每个功能模块的平均升级时长;
根据每个功能模块的平均升级时长,从所述多个功能模块中确定出平均升级时长最短的功能模块;
将所述多个功能模块中平均升级时长最短的功能模块确定为目标功能模块以进行更新。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当检测到预设的多个应用需要更新时,确定每个应用的更新优先级;
根据每个应用的更新优先级,从所述多个应用中确定出更新优先级最高的应用;
将所述多个应用中更新优先级最高的应用确定为目标应用。
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当确定所述目标文件不处于被占用状态时,利用所述升级文件替换所述目标文件。
8.一种应用更新装置,其特征在于,包括:
第一处理单元,用于在对目标应用中的目标功能模块进行更新时,判断所述目标功能模块对应的待升级的目标文件是否处于被占用状态;
第二处理单元,用于当确定所述目标文件处于被占用状态,且所述目标功能模块对应的显示界面处于预设状态时,关闭所述目标功能模块,并记录所述目标功能模块的界面状态数据;
第三处理单元,用于获取所述目标文件对应的升级文件,并利用所述升级文件替换所述目标文件,启动所述目标功能模块,并将所述目标功能模块恢复至所述界面状态数据指示的功能状态。
9.一种终端,其特征在于,包括处理器、输入设备、输出设备和存储器,所述处理器、所述输入设备、所述输出设备和所述存储器相互连接,其中,所述存储器用于存储计算机程序,所述计算机程序包括程序指令,所述处理器被配置用于调用所述程序指令,执行如权利要求1-7任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行如权利要求1-7任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910252199.XA CN109976790B (zh) | 2019-03-29 | 2019-03-29 | 应用更新方法、装置、终端及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910252199.XA CN109976790B (zh) | 2019-03-29 | 2019-03-29 | 应用更新方法、装置、终端及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109976790A true CN109976790A (zh) | 2019-07-05 |
CN109976790B CN109976790B (zh) | 2022-07-22 |
Family
ID=67081802
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910252199.XA Active CN109976790B (zh) | 2019-03-29 | 2019-03-29 | 应用更新方法、装置、终端及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109976790B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112099820A (zh) * | 2020-08-24 | 2020-12-18 | 华帝股份有限公司 | 一种ota升级方法、***及智能设备 |
CN113312068A (zh) * | 2020-02-27 | 2021-08-27 | 伊姆西Ip控股有限责任公司 | 用于升级***的方法、电子设备和计算机程序产品 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106293793A (zh) * | 2015-06-02 | 2017-01-04 | 西安中兴新软件有限责任公司 | 一种终端的软件升级方法、装置和*** |
CN106293781A (zh) * | 2015-05-15 | 2017-01-04 | 阿里巴巴集团控股有限公司 | 在线升级机器虚拟器的方法与设备 |
CN106933630A (zh) * | 2017-03-09 | 2017-07-07 | 百度在线网络技术(北京)有限公司 | 一种客户端升级方法、装置、设备及存储介质 |
CN107656746A (zh) * | 2017-08-31 | 2018-02-02 | 维沃移动通信有限公司 | 一种程序升级的方法和移动终端 |
CN108306956A (zh) * | 2018-01-26 | 2018-07-20 | 广东欧珀移动通信有限公司 | 信息推送方法、装置、服务器及计算机可读介质 |
CN108845813A (zh) * | 2018-06-14 | 2018-11-20 | 郑州云海信息技术有限公司 | 一种应用程序热更新方法 |
CN109062590A (zh) * | 2018-06-29 | 2018-12-21 | 武汉掌游科技有限公司 | 一种游戏sdk在线更新的方法及*** |
CN109375935A (zh) * | 2018-10-15 | 2019-02-22 | 上海基分文化传播有限公司 | 一种应用更新方法和*** |
-
2019
- 2019-03-29 CN CN201910252199.XA patent/CN109976790B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106293781A (zh) * | 2015-05-15 | 2017-01-04 | 阿里巴巴集团控股有限公司 | 在线升级机器虚拟器的方法与设备 |
CN106293793A (zh) * | 2015-06-02 | 2017-01-04 | 西安中兴新软件有限责任公司 | 一种终端的软件升级方法、装置和*** |
CN106933630A (zh) * | 2017-03-09 | 2017-07-07 | 百度在线网络技术(北京)有限公司 | 一种客户端升级方法、装置、设备及存储介质 |
CN107656746A (zh) * | 2017-08-31 | 2018-02-02 | 维沃移动通信有限公司 | 一种程序升级的方法和移动终端 |
CN108306956A (zh) * | 2018-01-26 | 2018-07-20 | 广东欧珀移动通信有限公司 | 信息推送方法、装置、服务器及计算机可读介质 |
CN108845813A (zh) * | 2018-06-14 | 2018-11-20 | 郑州云海信息技术有限公司 | 一种应用程序热更新方法 |
CN109062590A (zh) * | 2018-06-29 | 2018-12-21 | 武汉掌游科技有限公司 | 一种游戏sdk在线更新的方法及*** |
CN109375935A (zh) * | 2018-10-15 | 2019-02-22 | 上海基分文化传播有限公司 | 一种应用更新方法和*** |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113312068A (zh) * | 2020-02-27 | 2021-08-27 | 伊姆西Ip控股有限责任公司 | 用于升级***的方法、电子设备和计算机程序产品 |
CN113312068B (zh) * | 2020-02-27 | 2024-05-28 | 伊姆西Ip控股有限责任公司 | 用于升级***的方法、电子设备和计算机程序产品 |
CN112099820A (zh) * | 2020-08-24 | 2020-12-18 | 华帝股份有限公司 | 一种ota升级方法、***及智能设备 |
Also Published As
Publication number | Publication date |
---|---|
CN109976790B (zh) | 2022-07-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8812451B2 (en) | Programming model for synchronizing browser caches across devices and web services | |
CN103823813B (zh) | 电子终端历史操作记录处理方法及装置 | |
CN106484910A (zh) | 一种数据异步更新方法及其*** | |
CN101790721A (zh) | 执行顺序决定装置、执行顺序决定程序、执行顺序决定电路及信息处理装置 | |
US20070039003A1 (en) | Job management apparatus, job management method, and job management program | |
CN102203784A (zh) | 动态临床工作列表 | |
US20230267133A1 (en) | Systems and methods for providing predictions to applications executing on a computing device | |
CN109976790A (zh) | 应用更新方法、装置、终端及存储介质 | |
CN109992956A (zh) | 容器的安全策略的处理方法和相关装置 | |
CN113590146A (zh) | 服务器及容器升级方法 | |
CN104808953B (zh) | 控制数据存储的方法、装置及移动终端 | |
CN103201720B (zh) | 虚拟计算机控制装置、虚拟计算机控制方法以及集成电路 | |
CN103092536A (zh) | 图像形成***、图像形成装置和图像形成方法 | |
CN107450793A (zh) | 数据处理设备和数据处理方法 | |
CN109729132B (zh) | 开关控制方法、装置、设备和计算机可读存储介质 | |
JP5801517B2 (ja) | タスク処理方法および装置 | |
CN113721936A (zh) | 一种应用管理方法及智能终端、装置及存储介质 | |
CN116700816A (zh) | 一种资源管理方法及电子设备 | |
CN114625603A (zh) | 异常提示方法、电子设备以及计算机可读存储介质 | |
JP7060876B2 (ja) | 資産管理装置及び資産管理プログラム | |
JP5853791B2 (ja) | データ同期方法及びサーバ装置 | |
CN110275785A (zh) | 数据处理方法、装置、客户端和服务器 | |
CN110472977A (zh) | 一种区块链的交易记录生成方法及相关设备 | |
CN113296943B (zh) | 一种多文档多进程显示方法、装置、设备和存储介质 | |
CN108874344A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |