应用程序的卡顿处理方法、装置、终端及存储介质制造方法及图纸

技术编号:26375808 阅读:18 留言:0更新日期:2020-11-19 23:44
本申请公开了一种应用程序的卡顿处理方法、装置、终端及介质。其中方法包括:基于预配置的卡顿检测工具,确定目标应用的多个帧刷新事件;对多个帧刷新事件进行处理,以确定发生卡顿的多个掉帧页面;获取多个掉帧页面分别对应的过去预定时长的待上报日志;对多个掉帧页面分别对应的过去预定时长的待上报日志进行上报处理。本申请通过在目标应用中配置卡顿检测工具,不仅无需在应用的多处增加卡顿检测代码,能够维护应用中代码优雅性,还降低了对应用进行卡顿检测的开发成本;根据多个掉帧页面来获取过去预定时长的待上报日志,则获取到了更为详细的日志,为分析卡顿提供的更为详细的数据,以便对目标应用进行优化,降低卡顿发生几率。

【技术实现步骤摘要】
应用程序的卡顿处理方法、装置、终端及存储介质
本申请涉及计算机
,具体涉及一种应用程序的卡顿处理方法、装置、终端及存储介质。
技术介绍
卡顿现象是出现在手机、笔记本等电子设备中的一种现象,其出现的状况为:进行各种电子设备操作过程中,例如玩游戏的时候游戏画面不顺畅,或者听音乐的时候画面滞帧,也就是通常人们所说的“卡”。软件设计缺陷是出现卡顿现象的原因之一,因此避免因软件设计导致的卡顿的发生几率,需要在研发过程中及时进行检测。相关技术中,主要是通过在每行代码中打点,即在每行代码处插入卡顿检测代码来进行检测。这种方式,不仅需要到处打点,增加了工作成本,而且严重影响对代码程序的阅读和观感;同时,因release环境上报服务器进程与APP的主进程是一体的,容易造成进程上CPU调度、内存等挤在一起,影响主进程,用户体验差。
技术实现思路
为了解决上述至少一个技术问题,本申请提供一种应用程序的卡顿处理方法、装置、终端及介质。根据本申请的第一方面,提供了一种应用程序的卡顿处理方法,该方法包括:基于预配置的卡顿检测工具,确定目标应用的多个帧刷新事件;对多个帧刷新事件进行处理;依据处理结果,确定发生卡顿的多个掉帧页面;获取多个掉帧页面分别对应的过去预定时长的待上报日志;对多个掉帧页面分别对应的过去预定时长的待上报日志进行上报处理。根据本申请的第二方面,提供了一种应用程序的卡顿处理装置,该装置包括:帧事件确定模块,用于基于预配置的卡顿检测工具,确定目标应用的多个帧刷新事件;帧事件处理模块,用于对多个帧刷新事件进行处理;掉帧确定模块,用于依据处理结果,确定多个掉帧页面;日志获取模块,用于获取多个掉帧页面分别对应的过去预定时长的待上报日志;日志上报模块,用于对多个掉帧页面分别对应的过去预定时长的待上报日志进行上报处理。根据本申请的第三方面,提供了一种终端,该终端包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时以实现上述应用程序的卡顿处理方法。根据本申请的第四方面,提供了一种计算机可读存储介质,该介质存储有计算机可执行指令,该计算机可执行指令用于以执行上述应用程序的卡顿处理方法。本申请实施例通过预配置的卡顿检测工具来获取目标应用的多个帧刷新事件,并对个帧刷新事件进行处理,从而依据处理结果来确定多个掉帧页面,这种通过预配置的卡顿检测工具对目标应用进行卡顿检测的方式,不仅无需在应用的多处增加卡顿检测代码,起到了维护应用中代码优雅性的效果,还降低了对应用进行卡顿检测的开发成本;而根据多个掉帧页面来获取待上报日志的方式,则起到了以掉帧页面为中心来提取对卡顿进行分析的精确日志的效果,并将多个掉帧页面分别对应的过去预定时长的待上报日志进行上报处理,为对卡顿分析提供的更为详细的数据,继而对目标应用进行优化,降低卡顿发生几率,达到提升用户使用体验的目的。附图说明为了更清楚地说明本申请实施例中的技术方案,下面将对本申请实施例描述中所需要使用的附图作简单地介绍。图1为本申请实施例提供的一种应用程序的卡顿处理方法的流程示意图;图2为本申请实施例提供的一种应用程序的卡顿处理方法中确定掉帧的流程示意图;以及图3为根据本申请实施例提供的一种应用程序的卡顿处理装置的框图结构示意图。具体实施方式为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本申请,并不用于限定本申请。需要说明的是,虽然在装置示意图中进行了功能模块划分,在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于装置中的模块划分,或流程图中的顺序执行所示出或描述的步骤。首先对本申请涉及的几个名词进行介绍和解释:在本申请实施例中,用户界面UI线程是指应用的UI交互的线程,可以把对事件进行分发。例如,检测到用户在电子设备的屏幕上的按钮的点击操作时,用户界面UI线程会把点击时间交给view处理,view接到事件后会设置它的pressed状态,然后向事件队列中发送一个invalidate请求。为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。根据本申请的一个实施例,提供了一种应用程序的卡顿处理方法,如图1所示,该方法包括步骤S101至步骤S105。步骤S101:基于预配置的卡顿检测工具,确定目标应用的多个帧刷新事件。具体地,可以将卡顿检测工具设置为基于Choreographer机制的消息处理器,这种基于Choreographer机制的消息处理器对目标应用的用户界面UI进行注册监听以及提供回调接口,以使该消息处理器通过该回调接口来对目标应用中的帧刷新事件进行监控,从而获取到目标应用的多个帧刷新事件,并存储至相应的事件链表。具体地,目标应用运行时,依据集成在目标应用中的卡顿检测工具对目标应用的帧刷新事件进行检测。例如,检测到用户对目标应用的启动操作或目标应用从后台被切换至前台时,确定集成在目标应用的多个帧刷新事件。具体地,目标应用运行在电子设备上。其中,电子设备可以为手机、平板、PC机、可穿戴设备等终端,此处不再一一列举。具体地,可以将卡顿检测工具在目标应用的主程序中进行配置,以将卡顿检测工具集成在目标应用中,通过这种集成处理,简化了对目标应用的卡顿的检测成本。步骤S102:对多个帧刷新事件进行处理。具体地,可以将卡顿检测工具设置为基于Choreographer机制的消息处理器,这种基于Choreographer机制的消息处理器对目标应用的用户界面UI进行注册监听以及提供回调接口,以使该消息处理器通过该回调接口,来获取到目标应用中预定数量个帧画面刷新信号。具体地,卡顿检测工具从目标应用的用户界面UI主线程中获取预定数量的帧画面刷新信号。更具体地,目标应用一般按照每秒60帧的频率进行帧画面刷新,即每帧画面需要16.6ms,因此,卡顿检测工具,每间隔16.6ms接收到帧画面刷新信号。步骤S103:依据处理结果,确定多个掉帧页面。在本申请实施例中,掉帧页面用于表征为在规定时间完成刷新的页面,包括超时完成刷新的页面和未刷新到的页面。具体地,掉帧页面一般是由网络缓慢、运行错误等原因造成。步骤S104:获取多个掉帧页面分别对应的过去预定时长的待上报日志。具体地,不同掉帧页面的原因可能不同,因此,通过获取不同掉帧页面各自的待上报日志,为分析卡顿发生的原因提供了准备。步骤S105:对多个掉帧页面分别对应的过去预定时长的待上报日志进行上报处理。本申请实施例通过预配置的卡顿检测工具来获取目标应用的多个帧刷新事件,并对个帧刷新事件进行处理,从而依据处理结果来确定多个掉帧页面,这种通过预配置的卡顿检测工具对目标应用进行卡顿检测的本文档来自技高网...

【技术保护点】
1.一种应用程序的卡顿处理方法,其特征在于,包括:/n基于预配置的卡顿检测工具,确定目标应用的多个帧刷新事件;/n对多个所述帧刷新事件进行处理;/n依据处理结果,确定发生卡顿的多个掉帧页面;/n获取多个所述掉帧页面分别对应的过去预定时长的待上报日志;/n对多个所述掉帧页面分别对应的过去预定时长的所述待上报日志进行上报处理。/n

【技术特征摘要】
1.一种应用程序的卡顿处理方法,其特征在于,包括:
基于预配置的卡顿检测工具,确定目标应用的多个帧刷新事件;
对多个所述帧刷新事件进行处理;
依据处理结果,确定发生卡顿的多个掉帧页面;
获取多个所述掉帧页面分别对应的过去预定时长的待上报日志;
对多个所述掉帧页面分别对应的过去预定时长的所述待上报日志进行上报处理。


2.根据权利要求1所述的方法,其特征在于,所述对多个所述帧刷新事件进行处理的步骤,包括:
依据与帧刷新事件对应的帧事件处理函数,对多个所述帧刷新事件进行处理。


3.根据权利要求1所述的方法,其特征在于,所述依据处理结果,确定发生卡顿的多个掉帧页面的步骤,包括:
若任一所述帧刷新事件的处理时长大于预设的处理时长阈值,则停止对该任一所述帧刷新事件进行处理,并对该任一所述帧刷新事件的下一个所述帧刷新事件进行处理;
依据被跳过的所述帧刷新事件,确定多个掉帧页面。


4.根据权利要求1所述的方法,其特征在于,所述获取多个所述掉帧页面分别对应的过去预定时长的待上报日志的步骤,包括:
确定多个所述掉帧页面分别对应的处理时间点;
以多个所述掉帧页面分别对应的处理时间点为开始时间,在所述目标应用的日志中,提取多个所述掉帧页面分别对应的过去预定时长的待上报日志。


5.根据权利要求1所述的方法,其特征在于,所述获取多个所述掉帧页面分别对应的过去预定时长的待上报日志的步骤,包括:
依据多个所述掉帧页面以及预定义的帧偏移量,确定多个所述掉帧页面分别对应的目标帧页面;
以多个所述掉帧页面各自的第一时间和多个所述掉帧页面分别对应的...

【专利技术属性】
技术研发人员:陈方毅吴旻建
申请(专利权)人:厦门美柚股份有限公司
类型:发明
国别省市:福建;35

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

1