首页 / 专利库 / 软件 / 后台任务 / 应用内存异常的处理方法、装置、电子设备及装置

应用内存异常的处理方法、装置、电子设备及装置

阅读:909发布:2020-05-12

专利汇可以提供应用内存异常的处理方法、装置、电子设备及装置专利检索,专利查询,专利分析的服务。并且本 发明 实施例 涉及一种应用内存异常的处理方法、装置、 电子 设备及存储介质,方法包括:检测内存异常的第一应用;重启第一应用的 进程 ;判断是否存在使用终端屏幕的第二应用;基于判断结果,打开第一应用的界面。对存在内存异常的应用进行重启操作,方便用户的下一次的使用,进一步地,本发明实施例中,利用小窗模式和虚拟屏幕重启内存异常应用,做到无 感知 重启,不干扰用户的正常使用,提升用户的使用体验度。,下面是应用内存异常的处理方法、装置、电子设备及装置专利的具体信息内容。

1.一种应用内存异常的处理方法,应用于终端,其特征在于,包括:
检测内存异常的第一应用;
重启所述第一应用的进程
判断是否存在使用终端屏幕的第二应用;
基于判断结果,打开所述第一应用的界面。
2.根据权利要求1所述的方法,其特征在于,所述检测内存异常的第一应用后,所述方法还包括:
获取所述第一应用内存异常时的界面信息;
相应地,打开所述第一应用的界面,包括:基于所述界面信息,打开所述第一应用的界面。
3.根据权利要求2所述的方法,其特征在于,所述界面信息包括:所述第一应用的主界面或子界面。
4.根据权利要求1所述的方法,其特征在于,所述打开所述第一应用的界面,包括:打开所述第一应用的主界面。
5.根据权利要求1所述的方法,其特征在于,所述重启所述第一应用的进程,包括:
保持第二应用的激活状态并重启所述第一应用的进程。
6.根据权利要求5所述的方法,其特征在于,保持第二应用的激活状态并重启所述第一应用的进程,包括:
通过小窗模式重启所述第一应用的进程。
7.根据权利要求6所述的方法,其特征在于,通过小窗模式重启所述第一应用的进程,包括:
创建所述第一应用的小窗任务;
保持所述小窗任务处于后台任务栈的栈顶;
启动所述第一应用的进程。
8.根据权利要求1所述的方法,其特征在于,所述基于判断结果,打开所述第一应用的界面,包括:
若存在使用终端屏幕的第二应用,则通过虚拟屏幕打开所述第一应用的界面。
9.根据权利要求1所述的方法,其特征在于,所述基于判断结果,打开所述第一应用的界面,包括:
若不存在使用终端屏幕的第二应用,则通过终端屏幕打开所述第一应用的界面或通过虚拟屏幕打开所述第一应用的界面。
10.根据权利要求1所述的方法,其特征在于,所述检测内存异常的第一应用后,所述方法还包括:
判断所述第一应用的启动是否用户无感知
若用户有感知且存在使用终端屏幕的第二应用,则保持所述第二应用的激活状态并在终端屏幕显示所述第一应用重启确认控件。
11.根据权利要求10所述的方法,其特征在于,所述判断所述第一应用的启动是否用户无感知,包括:
判断所述第一应用是否为使用OpenGL渲染的应用、启动时通过扬声器发出声音的应用或启动时发送通知的应用;若是,则判定所述第一应用的启动是用户有感知;否则,判定所述第一应用的启动是用户无感知。
12.一种应用重启装置,其特征在于,包括:
检测模:用于检测内存异常的第一应用;
启动模块:用于重启所述第一应用的进程;
判断模块:用于判断是否存在使用终端屏幕的第二应用;
显示模块:基于判断结果,用于打开所述第一应用的界面。
13.一种电子设备,其特征在于,包括:处理器和存储器
所述处理器通过调用所述存储器存储的程序或指令,用于执行如权利要求1至11任一项所述方法的步骤。
14.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储程序或指令,所述程序或指令使计算机执行如权利要求1至11任一项所述方法的步骤。

说明书全文

应用内存异常的处理方法、装置、电子设备及装置

技术领域

[0001] 本发明实施例涉及智能终端技术领域,具体涉及一种应用内存异常的处理方法、装置、电子设备及存储介质。

背景技术

[0002] 随着智能终端技术的迅速发展,用户在工作和生活上对智能终端上运行的应用程序的操作要求越来越高,现有的智能终端对存在内存异常的应用一般采用直接杀死应用或者不做任何处理。
[0003] 发明人研究发现,现有技术中如果出现内存或者CPU异常不处理会导致系统非常卡顿,而如果直接杀死会导致用户下一次进入应用需要更多的等待时间。综上所述,现有技术中解决内存应用的方法,不利于用户的正常使用,导致用户体验极差。

发明内容

[0004] 本发明的至少一个实施例提供了一种应用内存异常的处理方法、装置、电子设备及存储介质,解决终端上内存异常应用的处理问题。
[0005] 第一方面,本发明实施例提出一种应用内存异常的处理方法,该方法包括:
[0006] 检测内存异常的第一应用;
[0007] 重启第一应用的进程
[0008] 判断是否存在使用终端屏幕的第二应用;
[0009] 基于判断结果,打开第一应用的界面。
[0010] 在一些实施例中,检测内存异常的第一应用后,方法还包括:
[0011] 获取第一应用内存异常时的界面信息;
[0012] 相应地,打开第一应用的界面,包括:基于界面信息,打开第一应用的界面。
[0013] 在一些实施例中,界面信息包括:第一应用的主界面或子界面。
[0014] 在一些实施例中,重启第一应用的进程,包括:保持第二应用的激活状态并重启第一应用的进程。
[0015] 在一些实施例中,通过小窗模式重启第一应用的进程,包括:
[0016] 创建第一应用的小窗任务;
[0017] 保持小窗任务处于后台任务栈的栈顶;
[0018] 启动第一应用的进程。
[0019] 在一些实施例中,基于判断结果,打开第一应用的界面,包括:
[0020] 若存在使用终端屏幕的第二应用,则通过虚拟屏幕打开第一应用的界面。
[0021] 在一些实施例中,基于判断结果,打开第一应用的界面,包括:
[0022] 若不存在使用终端屏幕的第二应用,则通过终端屏幕打开第一应用的界面或通过虚拟屏幕打开第一应用的界面。
[0023] 在一些实施例中,检测内存异常的第一应用后,方法还包括:
[0024] 判断第一应用的启动是否用户无感知
[0025] 若用户有感知且存在使用终端屏幕的第二应用,则保持第二应用的激活状态并在终端屏幕显示第一应用重启确认控件。
[0026] 在一些实施例中,判断第一应用的启动是否用户无感知,包括:判断第一应用是否为使用OpenGL渲染的应用、启动时通过扬声器发出声音的应用或启动时发送通知的应用;若是,则判定第一应用的启动是用户有感知;否则,判定第一应用的启动是用户无感知。
[0027] 第二方面,本发明实施例还提出一种应用重启装置,包括:检测模、启动模块、判断模块、显示模块;
[0028] 检测模块:用于检测内存异常的第一应用;
[0029] 启动模块:用于重启第一应用的进程;
[0030] 判断模块:用于判断是否存在使用终端屏幕的第二应用;
[0031] 显示模块:基于判断结果,用于打开第一应用的界面。
[0032] 第三方面,本发明实施例还提出一种电子设备,包括:处理器和存储器
[0033] 处理器通过调用存储器存储的程序或指令,用于执行上述任一应用内存异常处理方法的步骤。
[0034] 第四方面,本发明实施例还提出一种计算机可读存储介质,计算机可读存储介质存储程序或指令,程序或指令使计算机执行上述任一应用内存异常处理方法的步骤。
[0035] 本发明实施例中提供的应用内存异常处理方法,检测内存异常的第一应用;重启第一应用的进程;判断是否存在使用终端屏幕的第二应用;基于判断结果,打开第一应用的界面,对存在内存异常的应用进行重启操作,方便用户的下一次的使用,进一步地,本发明实施例中,利用小窗模式和虚拟屏幕重启内存异常应用,做到无感知重启,不干扰用户的正常使用,提升用户的使用体验度。附图说明
[0036] 为了更清楚地说明本发明实施例的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。
[0037] 图1为本发明实施例提供的一种应用内存异常处理方法的流程图
[0038] 图2a为本发明实施例提供的一种应用权限访问控件示意图;
[0039] 图2b为本发明实施例提供的另一种应用权限访问控件示意图;
[0040] 图3a为本发明实施例提供的一种应用重启确认控件示意图;
[0041] 图3b为本发明实施例提供的另一种应用重启确认控件示意图
[0042] 图4为本发明实施例提供的一种应用内存异常处理装置结构示意图;
[0043] 图5为本发明实施例提供的一种电子设备的硬件结构示意图。

具体实施方式

[0044] 为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,所描述的实施例是本发明的一部分实施例,而不是全部的实施例。此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。基于所描述的本发明的实施例,本领域普通技术人员所获得的所有其他实施例,都属于本发明保护的范围。
[0045] 需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。
[0046] 本发明实施例提供的技术方案,主要是针对现有智能终端上存在内存异常的应用程序,通常只能对存在内存异常的应用程序采取直接杀死或不做任何处理,例如智能终端中,通常会利用小窗模式和虚拟屏幕来打开这些存在内存异常的应用程序。例如用户在逛淘宝的时候,收到微信消息进而进入微信界面,而淘宝应用程序就会进入后台运行,若淘宝发生内存异常的时候,智能终端会直接杀死淘宝应用程序或不做处理,所以用户在进入淘宝应用程序的时候,就会重新打开淘宝应用程序及重新加载用户刚才所浏览的商品界面信息。
[0047] 而本发明实施例提供的技术方案中,智能终端检测内存异常的淘宝应用程序,并非直接重启淘宝应用程序,而是获取内存异常时淘宝应用程序的界面信息,并判断淘宝应用程序的启动是否是用户无感知的,同时判断是否存在使用终端屏幕的其他应用,如果用户正处在微信聊天界面,则通过小窗模式开启淘宝应用程序的进程,利用虚拟屏幕打开淘宝应用程序的界面,然后加载用户之前浏览的商品界面信息,所以在用户退出微信聊天界面,重新进入淘宝应用程序界面的时候,恢复最初的浏览状态。
[0048] 图1为本发明实施例提供的一种应用内存异常处理方法的流程图,如图1所示,该方法包括以下步骤:
[0049] 步骤101:检测内存异常的第一应用。
[0050] 步骤102:重启第一应用的进程。
[0051] 步骤103:判断是否存在使用终端屏幕的第二应用。
[0052] 步骤104:基于判断结果,打开第一应用的界面。
[0053] 具体的,步骤101中,智能终端检测内存异常的应用程序后,也就是第一应用,会获取出现内存异常的应用程序当时的的界面信息,若处在应用程序主界面就获取主界面的界面信息,若处在应用程序子界面就获取子界面信息。
[0054] 以淘宝应用程序为例,上述内存异常应用程序的的界面信息就是淘宝出现内存异常的界面信息,比如处在淘宝的店铺主界面,就获取店铺界面信息,或者是打开某件商品的界面,获取的是某件商品界面信息。
[0055] 如步骤101中所描述的,智能终端检测内存异常的应用程序后,会检测存在内存异常应用程序的类型,需要判断存在内存异常的应用程序的启动是否会干扰用户的正常使用,若存在内存异常的应用在开始的过程中会发出声音或发送通知,则属于有感知的应用程序,若该存在内存异常的应用程序使用OpenGL渲染,同样属于有感知的应用程序。
[0056] 例如,用户开启酷狗音乐或QQ音乐等音频类应用程序的过程中,会发出特殊的声音提示用户,属于有感知应用程序;用户在开启王者荣耀或刺激战场等游戏类应用程序的过程中,该种应用程序的开启界面会占用智能终端的主屏幕,属于有感知应用程序;如图2(a)、图2(b)所示,为本发明实施例提供的两种应用权限访问控件示意图,访问内存卡权限,例如用户在开启美图秀秀或荣耀助手等应用程序过程中,会发出通知请求用户同意某些权限,属于有感知应用程序。
[0057] 在一些实施例中,若正在使用终端屏幕的应用程序出现内存异常问题,不管是否为有无感知应用程序,智能终端会重新启动该应用程序。
[0058] 在一些实施例中,用户正在使用占用智能终端屏幕的应用程序,若出现其他有感知应用程序存在内存异常问题,智能终端在重启存在内存异常的应用程序之前,保持当前占用智能终端屏幕的应用程序的激活状态,发送重启确认控件。
[0059] 如图3(b)、图3(a)所示,为本发明实施例提供的两种应用重启确认控件示意图,以游戏为例,若用户正在进行游戏操作,微信出现内存异常问题需要重新启动,这时手机会发送一个重启确认控件,显示在屏幕的通知栏或屏幕左上或屏幕上方等,询问用户是否同意重启该应用,用户可以根据自己的情况同意重启或拒绝重启。
[0060] 在一些实施例中,如步骤102中所描述的,用户正在使用第二应用程序,若出现其他无感知应用程序存在内存异常问题,智能终端保持第二应用程序的激活状态并通过小窗模式重启出现内存异常的应用程序的进程。
[0061] 具体的,本步骤中,如步骤102中描述的,用户正在使用第二应用的过程中,重启存在内存异常的应用程序的进程需要通过小窗模式模式进行,第一步需要创建存在内存异常的应用程序的小窗任务,由智能终端执行,然后保持存在内存异常的应用程序的小窗任务处于后台任务栈的栈顶,最后开启存在内存异常的应用程序的进程。
[0062] 在一些实施例中,若用户正在使用的第二应用程序并没有占用智能终端的屏幕,则重启存在内存异常的应用程序的进程之后,直接打开该应用程序的界面,并在智能终端屏幕上显示内存异常应用程序当时的的界面信息。
[0063] 在一些实施例中,若用户正在使用的第二应用程序占用智能终端的屏幕,则重启存在内存异常的应用程序的进程之后,通过虚拟屏幕打开该应用程序的界面,并在虚拟屏幕上显示内存异常应用程序当时的的界面信息。
[0064] 具体的,若用户正在使用QQ音乐听歌,QQ音乐并没有占用手机的屏幕,这时微信应用出现内存异常问题,手机对微信进行内存异常处理,然后重启之后的微信直接显示在手机屏幕上,并且恢复到之前用户浏览到的状态,例如用户之前在查阅公众号的文章,此时显示公众号文章界面信息。
[0065] 具体的,若用户正在使用微信聊天,聊天界面占用手机的屏幕,这时腾讯视频应用出现内存异常问题,手机对腾讯视频进行内存异常处理,然后重启之后的腾讯视频恢复到之前用户浏览到的状态,通过虚拟屏幕打开显示界面,例如用户之前在观看视频,此时在虚拟屏幕上显示用户观看的视频界面信息。
[0066] 图4为本发明实施例提供的一种应用内存异常处理装置结构示意图,如图4所示,该装置包括:检测模块201、启动模块202、判断模块203、显示模块204;
[0067] 检测模块201:用于检测内存异常的第一应用;
[0068] 启动模块202:用于重启第一应用的进程;
[0069] 判断模块203:用于判断是否存在使用终端屏幕的第二应用;
[0070] 显示模块204:基于判断结果,用于打开第一应用的界面。
[0071] 在一些实施例中,上述装置还可以包括:
[0072] 界面信息获取模块:用于获取第一应用内存异常时的界面信息。
[0073] 在一些实施例中,上述装置还可以包括:
[0074] 应用类型判断模块:用于判断第一应用的启动是否用户无感知。
[0075] 在一些实施例中,确定第一应用的开启有无感知,若用户有感知且存在使用终端屏幕的第二应用,则保持第二应用的激活状态并在终端屏幕显示第一应用重启确认控件。
[0076] 具体的,检测模块201用于检测内存异常的应用程序后,也就是第一应用,还存在界面信息获取模块用于获取第一应用内存异常时的界面信息,也就是会获取出现内存异常的应用程序当时的的界面信息,若处在应用程序主界面就获取主界面的界面信息,若处在应用程序子界面就获取子界面信息。
[0077] 同样以淘宝应用程序为例,上述内存异常应用程序的的界面信息就是淘宝出现内存异常的界面信息,比如处在淘宝的店铺主界面,就获取店铺界面信息,或者是打开某件商品的界面,获取的是某件商品界面信息。
[0078] 如所述检测模块201的作用,智能终端检测内存异常的应用程序后,还存在应用类型判断模块用于判断第一应用的启动是否用户无感知,也就是检测存在内存异常应用程序的类型,需要判断存在内存异常的应用程序的启动是否会干扰用户的正常使用,若存在内存异常的应用在开始的过程中会发出声音或发送通知,则属于有感知的应用程序,若该存在内存异常的应用程序使用OpenGL渲染,同样属于有感知的应用程序。
[0079] 例如,用户开启酷狗音乐或酷我音乐等音频类应用程序的过程中,会发出特殊的声音提示用户,属于有感知应用程序;用户在开启王者荣耀或刺激战场等游戏类应用程序的过程中,该种应用程序的开启界面会占用智能终端的主屏幕,属于有感知应用程序;如图2(a)所示,为本发明实施例提供的另一种应用权限访问控件示意图,访问内存卡权限,例如用户在开启美图秀秀或荣耀助手等应用程序过程中,会发出通知请求用户同意某些权限,属于有感知应用程序。
[0080] 在一些实施例中,若正在使用终端屏幕的应用程序出现内存异常问题,不管是否为有无感知应用程序,智能终端会重新启动该应用程序。
[0081] 在一些实施例中,用户正在使用占用智能终端屏幕的应用程序,若出现其他有感知应用程序存在内存异常问题,智能终端在重启存在内存异常的应用程序之前,保持当前占用智能终端屏幕的应用程序的激活状态,发送重启确认控件。
[0082] 如图3(b)、图3(b)所示,为本发明实施例提供的两种应用重启确认控件示意图,以游戏为例,若用户正在进行游戏操作,微信出现内存异常问题需要重新启动,这时手机会发送一个重启确认控件,显示在屏幕的通知栏或屏幕左上角或屏幕上方等,询问用户是否同意重启该应用,用户可以根据自己的情况同意重启或拒绝重启。
[0083] 在一些实施例中,如所述启动模块202用于重启第一应用的进程,用户正在使用第二应用程序,若出现其他无感知应用程序存在内存异常问题,智能终端保持第二应用程序的激活状态并通过小窗模式重启出现内存异常的应用程序的进程。
[0084] 具体的,如所述启动模块202用于重启第一应用的进程,用户正在使用第二应用的过程中,重启存在内存异常的应用程序的进程需要通过小窗模式模式进行,第一步需要创建存在内存异常的应用程序的小窗任务,由智能终端执行,然后保持存在内存异常的应用程序的小窗任务处于后台任务栈的栈顶,最后开启存在内存异常的应用程序的进程。
[0085] 在一些实施例中,若用户正在使用的第二应用程序并没有占用智能终端的屏幕,则重启存在内存异常的应用程序的进程之后,直接打开该应用程序的界面,并在智能终端屏幕上显示内存异常应用程序当时的的界面信息。
[0086] 在一些实施例中,若用户正在使用的第二应用程序占用智能终端的屏幕,则重启存在内存异常的应用程序的进程之后,通过虚拟屏幕打开该应用程序的界面,并在虚拟屏幕上显示内存异常应用程序当时的的界面信息。
[0087] 具体的,若用户正在使用QQ音乐听歌,QQ音乐并没有占用手机的屏幕,这时微信应用出现内存异常问题,手机对微信进行内存异常处理,然后重启之后的微信直接显示在手机屏幕上,并且恢复到之前用户浏览到的状态,例如用户之前在查阅公众号的文章,此时显示公众号文章界面信息。
[0088] 具体的,若用户正在使用微信聊天,聊天界面占用手机的屏幕,这时腾讯视频应用出现内存异常问题,手机对腾讯视频进行内存异常处理,然后重启之后的腾讯视频恢复到之前用户浏览到的状态,通过虚拟屏幕打开显示界面,例如用户之前在观看视频,此时在虚拟屏幕上显示用户观看的视频界面信息。
[0089] 图5为本发明实施例提供的电子设备的硬件结构示意图,如图4所示,该电子设备可以包括手机、平板电脑等,该电子设备包括:处理器301、存储器302;
[0090] 上述电子设备还可以包括:输入装置303和输出装置304。
[0091] 处理器301通过运行存储在存储器302中的软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述方法实施例的应用内存异常的处理方法。
[0092] 存储器302作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本发明实施例中的应用内存异常的处理方法对应的程序指令/模块(例如,附图3所示的检测模块201、启动模块202、判断模块203、显示模块204)。
[0093] 输入装置303可用于接收输入的数字或字符信息,以及产生与电子设备的用户设置以及功能控制有关的键信号输入。
[0094] 输出装置304可包括显示屏等显示设备。
[0095] 可选的,上述电子设备中的处理器301、存储器302、输入装置303和输出装置304可以通过总线或者其他方式连接。
[0096] 本发明实施例还提供一种包含计算机可读存储介质,该计算机可读存储介质存储程序或指令,该程序或指令使计算机执行行时用于执行一种应用内存异常的处理方法,该方法包括:
[0097] 检测内存异常的第一应用;
[0098] 重启所述第一应用的进程;
[0099] 判断是否存在使用终端屏幕的第二应用;
[0100] 基于判断结果,打开所述第一应用的界面。
[0101] 可选的,该计算机可执行指令在由计算机处理器执行时还可以用于执行本发明任意实施例所提供的应用内存异常的处理方法的技术方案。
[0102] 本发明实施例中,利用小窗模式和虚拟屏幕重启内存异常应用,做到无感知重启,不干扰用户的正常使用,提升用户的使用体验度。
[0103] 以上实施例公开的装置能够实现以上各方法实施例公开的方法的流程,为避免重复,在此不再赘述。
[0104] 需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
[0105] 本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。
[0106] 虽然结合附图描述了本发明的实施方式,但是本领域技术人员可以在不脱离本发明的精神和范围的情况下做出各种修改和变型,这样的修改和变型均落入由所附权利要求所限定的范围之内。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈