一种应用程序闪退处理方法、智能终端及存储介质技术

技术编号:24799016 阅读:17 留言:0更新日期:2020-07-07 20:58
本发明专利技术公开了一种应用程序闪退处理方法、存储介质及智能终端,方法包括:当监测到应用程序出现闪退时,根据闪退关键标志确认出闪退时间点的应用程序,并记录应用闪退时的oom_score_adj;利用性能分析器分析运行中的应用程序,得到导致CPU占比过高的变量,并降低应用程序中会导致系统CPU idle占比过低的对象的创建频率;若闪退现象还存在,则查看内存管理机制,并对应用程序的进程优先级进行调整。本发明专利技术解决了现有技术中当应用程序的CPU占比超过系统承载能力时,导致CUP占比过高或占用运行内存过大的后台服务类应用程序内存被系统回收导致应用程序闪退的问题。

【技术实现步骤摘要】
一种应用程序闪退处理方法、智能终端及存储介质
本专利技术涉及应用程序进程优化
,具体涉及一种应用程序闪退处理方法、智能终端及存储介质。
技术介绍
在Android智能电视等移动终端上安装有多个应用程序,但是不同的移动终端内使用的芯片具有不同的运行内存和CPU占比,所以每个应用程序运行过程中占用的内存是有限的,不同的移动终端对不同进程等级的应用程序做了内存占用的限制。现有技术中Android系统即使用户在界面上关掉一个应用,切换到别的应用,为了下次启动应用能够更加快速,被关掉的应用进程依然会存在于内存之中,随着系统运行时间的增长,内存中的进程也会越来越多,当应用程序的CPU占比超过系统承载能力时,系统运行能力下降,会对不同等级进程的应用程序进行内存回收,当应用程序的等级较低且该应用程序的CUP占比过高或占用运行内存过大时很容易被系统回收,从而导致应用程序闪退,给用户的使用带来了不便。因此,现有技术还有待于改进和发展。
技术实现思路
本专利技术要解决的技术问题在于,针对现有技术的上述缺陷,提供一种应用程序闪退处理方法、智能终端及存储介质,旨在解决现有技术中当应用程序的CPU占比超过系统承载能力时,不能合理进行内存回收,导致CUP占比过高或占用运行内存过大的后台服务应用程序内存被系统回收,应用程序闪退等问题。本专利技术解决技术问题所采用的技术方案如下:一种应用程序闪退处理方法,其中,所述方法包括:当监测到应用程序出现闪退时,查看log文件,根据闪退关键标志确定出应用程序的闪退时间点,并记录应用程序闪退时的oom_score_adj;利用性能分析器对确定出的应用程序进行分析,并降低所述应用程序中会导致系统CPUidle占比低于阈值的应用程序的对象创建频率;若闪退现象还存在,则查看内存管理机制,并对应用程序的进程优先级进行调整。所述的应用程序闪退处理方法,其中,所述若闪退现象还存在,则查看内存管理机制,并对应用程序的进程优先级进行调整的步骤之后,还包括:若闪退现象还存在,则需要对出厂设置时的系统的低内存阈值进行优化调整。所述的应用程序闪退处理方法,其中,所述当监测到应用程序出现闪退时,查看log文件,根据闪退关键标志确定出应用程序的闪退时间点,并记录应用闪退时的oom_score_adj的步骤之前,还包括:预先设置一用于监测是否存在应用程序出现闪退的监听程序,所述监听程序每隔预设的时间间隔对正在运行的应用程序进行监测。所述的应用程序闪退处理方法,其中,所述当监测到应用程序出现闪退时,查看log文件,根据闪退关键标志确定出应用程序的闪退时间点,并记录应用程序闪退时的oom_score_adj的步骤,包括:当监测到应用程序出现闪退时,查看系统的log文件;从所述log文件中获取闪退关键标志,并根据所述闪退关键标志确认应用程序的闪退时间点;记录应用程序闪退时的oom_score_adj。所述的应用程序闪退处理方法,其中,所述log文件中包含的闪退关键标志的内容为:WINDEATH:Window。所述的应用程序闪退处理方法,其中,所述利用性能分析器对确定出的应用程序进行分析,并降低所述应用程序中会导致系统CPUidle占比低于阈值的应用程序的对象创建频率的步骤,包括:当确定出闪退的应用程序之后,利用AndroidStudio的AndroidProfile工具对应用程序的运行内存进行分析,在终端通过top命令依次查看当运行所述应用程序时,系统的CPU占用情况,并判断所述应用程序运行时是否会导致系统CPUidle占比低于预设的阈值;若是时,则控制所述应用程序降低对象创建频率及调用中间件频率以降低CPU占用率。所述的应用程序闪退处理方法,其中,所述若闪退现象还存在,则查看内存管理机制,并对应用程序的进程优先级进行调整的步骤,包括:若闪退现象还存在,则查看kernellog文件,找到lowmemorykiller的log文件;从所述lowmemorykiller的log文件查找到仍存在闪退现象的应用程序的当前oom_score_adj值,并将仍存在闪退现象的应用程序的当前oom_score_adj值与出厂内置的同类型应用的oom_score_adj值进行对比,判断lowmemorykiller的低内存阈值是否设置合理;若合理,则提高仍存在闪退现象的应用程序的进程优先级。所述的应用程序闪退处理方法,其中,所述提高仍存在闪退现象的应用程序的进程优先级的步骤,包括:若仍存在闪退现象的应用程序是系统内置应用,则在该应用程序配置文件中加入android:persistent=true,以提高进程优先级;若仍存在闪退现象的应用程序不是系统内置应用,则在该应用程序启动后的5s内调用该应用程序的startForeground()函数,启动一个前台服务,以提高应用优先级。一种存储介质,其上存储有多条指令,其中,所述指令适于由处理器加载并执行,以执行实现上述任一项应用程序闪退处理方法的步骤。一种智能终端,其中,包括:处理器、与处理器通信连接的存储介质,所述存储介质适于存储多条指令;所述处理器适于调用所述存储介质中的指令,以执行实现上述任一项所述的应用程序闪退处理方法的步骤。本专利技术的有益效果:本专利技术通过降低出现闪退的应用程序中会导致系统CUPidle占比低于阈值的功能的对象创建频率,并对其进程优先级进行调整,解决现有技术中当应用程序的CPU占比超过系统承载能力时,导致CUP占比过高或占用运行内存过大的后台服务应用程序内存被系统回收导致应用程序闪退的问题,给用户带来方便。附图说明图1是本专利技术的应用程序闪退处理方法的较佳实施例的流程图。图2是本专利技术的应用程序闪退处理方法的具体应用实施例的流程图。图3是本专利技术的智能终端的功能原理图。具体实施方式为使本专利技术的目的、技术方案及优点更加清楚、明确,以下参照附图并举实施例对本专利技术进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本专利技术,并不用于限定本专利技术。下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本专利技术及其系统应用或使用的任何限制。基于本专利技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。本专利技术提供的应用程序闪退处理方法,可以系统应用于终端中。其中,终端可以但不限于是各种个人计算机、笔记本电脑、手机、平板电脑、车载电脑和便携式可穿戴设备。本专利技术的终端采用多核处理器。其中,终端的处理器可以为中央处理器(CentralProcessingUnit,CPU),图形处理器(GraphicsProcess本文档来自技高网...

【技术保护点】
1.一种应用程序闪退处理方法,其特征在于,所述方法包括:/n当监测到应用程序出现闪退时,查看log文件,根据闪退关键标志确定出应用程序的闪退时间点,并记录应用程序闪退时的oom_score_adj;/n利用性能分析器对确定出的应用程序进行分析,并降低所述应用程序中会导致系统CPU idle占比低于阈值的应用程序的对象创建频率;/n若闪退现象还存在,则查看内存管理机制,并对应用程序的进程优先级进行调整。/n

【技术特征摘要】
1.一种应用程序闪退处理方法,其特征在于,所述方法包括:
当监测到应用程序出现闪退时,查看log文件,根据闪退关键标志确定出应用程序的闪退时间点,并记录应用程序闪退时的oom_score_adj;
利用性能分析器对确定出的应用程序进行分析,并降低所述应用程序中会导致系统CPUidle占比低于阈值的应用程序的对象创建频率;
若闪退现象还存在,则查看内存管理机制,并对应用程序的进程优先级进行调整。


2.根据权利要求1所述的应用程序闪退处理方法,其特征在于,所述若闪退现象还存在,则查看内存管理机制,并对应用程序的进程优先级进行调整的步骤之后,还包括:
若闪退现象还存在,则需要对出厂设置时的系统的低内存阈值进行优化调整。


3.根据权利要求1所述的应用程序闪退处理方法,其特征在于,所述当监测到应用程序出现闪退时,查看log文件,根据闪退关键标志确定出应用程序的闪退时间点,并记录应用闪退时的oom_score_adj的步骤之前,还包括:
预先设置一用于监测是否存在应用程序出现闪退的监听程序,所述监听程序每隔预设的时间间隔对正在运行的应用程序进行监测。


4.根据权利要求1所述的应用程序闪退处理方法,其特征在于,所述当监测到应用程序出现闪退时,查看log文件,根据闪退关键标志确定出应用程序的闪退时间点,并记录应用程序闪退时的oom_score_adj的步骤,包括:
当监测到应用程序出现闪退时,查看系统的log文件;
从所述log文件中获取闪退关键标志,并根据所述闪退关键标志确认应用程序的闪退时间点;
记录应用程序闪退时的oom_score_adj。


5.根据权利要求4所述的应用程序闪退处理方法,其特征在于,所述log文件中包含的闪退关键标志的内容为:WINDEATH:Window。


6.根据权利要求1所述的应用程序闪退处理方法,其特征在于,所述利用性能分析器对确定出的应用程序进行分析,并降低所述应用程序中会导致系统CPUidle占比低于阈值的应用程序的对象创建频率的步骤,包括:
当确...

【专利技术属性】
技术研发人员:王芳
申请(专利权)人:深圳TCL数字技术有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1