页面异常识别方法、装置、电子设备及存储介质与流程

文档序号:29633077发布日期:2022-04-13 16:28阅读:95来源:国知局
页面异常识别方法、装置、电子设备及存储介质与流程

1.本公开涉及互联网技术领域,尤其涉及一种页面异常识别方法、装置、电子设备及存储介质。


背景技术:

2.互联网场景中常使用浏览器页面,而浏览器中页面是否异常(比如是否卡顿),是反映页面可用性和友好性的重要指标。
3.相关技术中,通过查看fps(frames per second,每秒传输帧数),可以判断页面是否异常;比如,当某一时刻的每秒传输帧数偏低,则认为页面异常,处于卡顿状态。但是,仅根据某一时刻的每秒传输帧数来判断页面是否卡顿,会导致页面异常识别的准确率较低。


技术实现要素:

4.本公开提供一种页面异常识别方法、装置、电子设备及存储介质,以至少解决相关技术中页面异常识别的准确率较低的问题。本公开的技术方案如下:
5.根据本公开实施例的第一方面,提供一种页面异常识别方法,包括:
6.获取待检测页面的单位时间传输帧数数组;所述单位时间传输帧数数组中包括所述待检测页面的多个依序排列的单位时间传输帧数;
7.从所述单位时间传输帧数数组中,确定出连续低于单位时间传输帧数阈值的单位时间传输帧数的目标数量;
8.根据所述目标数量,确定对所述待检测页面的异常识别结果。
9.在一示例性实施例中,所述根据所述目标数量,确定对所述待检测页面的异常识别结果,包括:
10.当所述目标数量大于或者等于预设数量时,确定所述待检测页面异常。
11.在一示例性实施例中,所述根据所述目标数量,确定对所述待检测页面的异常识别结果,还包括:
12.当所述目标数量小于所述预设数量时,从所述单位时间传输帧数数组中,识别出目标单位时间传输帧数的下一个单位时间传输帧数;所述目标单位时间传输帧数为所述连续低于单位时间传输帧数阈值的单位时间传输帧数中的最后一个单位时间传输帧数;
13.统计所述连续低于单位时间传输帧数阈值的单位时间传输帧数,以及所述目标单位时间传输帧数的下一个单位时间传输帧数的平均值;
14.当所述平均值小于所述单位时间传输帧数阈值时,确定所述待检测页面异常。
15.在一示例性实施例中,在获取待检测页面的单位时间传输帧数数组之前,还包括:
16.获取所述待检测页面的多个单位时间传输帧数;每个单位时间传输帧数标识有对应的获取时间;
17.按照所述获取时间从小到大的顺序,将所述多个单位时间传输帧数存储至所述单位时间传输帧数数组。
18.在一示例性实施例中,所述获取所述待检测页面的多个单位时间传输帧数,包括:
19.当所述待检测页面处于可见状态时,对所述待检测页面的帧请求事件进行监听;
20.当监听到所述待检测页面的帧请求事件时,对所述待检测页面的帧请求事件的执行次数进行更新,并记录所述待检测页面的帧请求事件的执行时间戳;
21.当所述执行时间戳与开始时间戳之间的差值大于预设差值时,根据所述差值和更新后的执行次数,统计所述待检测页面的单位时间传输帧数;所述开始时间戳表示本次统计单位时间传输帧数的开始时间;
22.当所述执行时间戳与所述开始时间戳之间的差值小于或者等于所述预设差值时,则重新对所述待检测页面的帧请求事件进行监听,直到监听到的帧请求事件的执行时间戳与所述开始时间戳之间的差值大于所述预设差值。
23.在一示例性实施例中,所述方法还包括:
24.当所述待检测页面处于不可见状态时,停止对所述待检测页面的帧请求事件进行监听,并统计所述待检测页面处于不可见状态的总时间;
25.所述根据所述差值和更新后的执行次数,统计所述待检测页面的单位时间传输帧数,包括:
26.将所述差值与所述待检测页面处于不可见状态的总时间进行相减,得到更新后的差值;
27.根据所述更新后的差值和更新后的执行次数,统计所述待检测页面的单位时间传输帧数。
28.在一示例性实施例中,所述获取待检测页面的单位时间传输帧数数组,包括:
29.获取所述待检测页面的页面标识;
30.获取与所述页面标识对应的单位时间传输帧数数组,作为所述待检测页面的单位时间传输帧数数组。
31.根据本公开实施例的第二方面,提供一种页面异常识别装置,包括:
32.获取单元,被配置为执行获取待检测页面的单位时间传输帧数数组;所述单位时间传输帧数数组中包括所述待检测页面的多个依序排列的单位时间传输帧数;
33.确定单元,被配置为执行从所述单位时间传输帧数数组中,确定出连续低于单位时间传输帧数阈值的单位时间传输帧数的目标数量;
34.识别单元,被配置为执行根据所述目标数量,确定对所述待检测页面的异常识别结果。
35.在一示例性实施例中,所述识别单元,还被配置为执行当所述目标数量大于或者等于预设数量时,确定所述待检测页面异常。
36.在一示例性实施例中,所述识别单元,还被配置为执行当所述目标数量小于所述预设数量时,从所述单位时间传输帧数数组中,识别出目标单位时间传输帧数的下一个单位时间传输帧数;所述目标单位时间传输帧数为所述连续低于单位时间传输帧数阈值的单位时间传输帧数中的最后一个单位时间传输帧数;统计所述连续低于单位时间传输帧数阈值的单位时间传输帧数,以及所述目标单位时间传输帧数的下一个单位时间传输帧数的平均值;当所述平均值小于所述单位时间传输帧数阈值时,确定所述待检测页面异常。
37.在一示例性实施例中,所述页面异常识别装置还包括存储单元,被配置为执行获
取所述待检测页面的多个单位时间传输帧数;每个单位时间传输帧数标识有对应的获取时间;按照所述获取时间从小到大的顺序,将所述多个单位时间传输帧数存储至所述单位时间传输帧数数组。
38.在一示例性实施例中,所述存储单元,还被配置为执行当所述待检测页面处于可见状态时,对所述待检测页面的帧请求事件进行监听;当监听到所述待检测页面的帧请求事件时,对所述待检测页面的帧请求事件的执行次数进行更新,并记录所述待检测页面的帧请求事件的执行时间戳;当所述执行时间戳与开始时间戳之间的差值大于预设差值时,根据所述差值和更新后的执行次数,统计所述待检测页面的单位时间传输帧数;所述开始时间戳表示本次统计单位时间传输帧数的开始时间;当所述执行时间戳与所述开始时间戳之间的差值小于或者等于所述预设差值时,则重新对所述待检测页面的帧请求事件进行监听,直到监听到的帧请求事件的执行时间戳与所述开始时间戳之间的差值大于所述预设差值。
39.在一示例性实施例中,所述页面异常识别装置还包括统计单元,被配置为执行当所述待检测页面处于不可见状态时,停止对所述待检测页面的帧请求事件进行监听,并统计所述待检测页面处于不可见状态的总时间;
40.所述存储单元,还被配置为执行将所述差值与所述待检测页面处于不可见状态的总时间进行相减,得到更新后的差值;根据所述更新后的差值和更新后的执行次数,统计所述待检测页面的单位时间传输帧数。
41.在一示例性实施例中,所述获取单元,还被配置为执行获取所述待检测页面的页面标识;获取与所述页面标识对应的单位时间传输帧数数组,作为所述待检测页面的单位时间传输帧数数组。
42.根据本公开实施例的第三方面,提供一种电子设备,包括:处理器;用于存储所述处理器可执行指令的存储器;其中,所述处理器被配置为执行所述指令,以实现如第一方面的任一项实施例中所述的页面异常识别方法。
43.根据本公开实施例的第四方面,提供一种计算机可读存储介质,当所述计算机可读存储介质中的指令由电子设备的处理器执行时,使得所述电子设备能够执行第一方面的任一项实施例中所述的页面异常识别方法。
44.根据本公开实施例的第五方面,提供一种计算机程序产品,所述计算机程序产品包括指令,所述指令被电子设备的处理器执行时,使得所述电子设备能够执行第一方面的任一项实施例中所述的页面异常识别方法。
45.本公开的实施例提供的技术方案至少带来以下有益效果:
46.通过获取待检测页面的单位时间传输帧数数组;单位时间传输帧数数组中包括待检测页面的多个依序排列的单位时间传输帧数;然后从单位时间传输帧数数组中,确定出连续低于单位时间传输帧数阈值的单位时间传输帧数的目标数量;最后根据目标数量,确定对待检测页面的异常识别结果;这样,通过考虑连续低于单位时间传输帧数阈值的单位时间传输帧数的总数量,可以准确判断待检测页面在一段连续时间段内的运行情况,而不是仅仅考虑某一时刻的单位时间传输帧数,从而避免了通过某一时刻的单位时间传输帧数来识别页面是否异常,导致页面异常识别的准确率较低的缺陷,进而提高了页面异常识别的准确率。
47.应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
48.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理,并不构成对本公开的不当限定。
49.图1是根据一示例性实施例示出的一种页面异常识别方法的流程图。
50.图2是根据一示例性实施例示出的确定对待检测页面的异常识别结果的步骤的流程图。
51.图3是根据一示例性实施例示出的另一种页面异常识别方法的流程图。
52.图4是根据一示例性实施例示出的统计fps的方法的流程图。
53.图5是根据一示例性实施例示出的一种页面异常识别装置的框图。
54.图6是根据一示例性实施例示出的一种电子设备的框图。
具体实施方式
55.为了使本领域普通人员更好地理解本公开的技术方案,下面将结合附图,对本公开实施例中的技术方案进行清楚、完整地描述。
56.需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
57.还需要说明的是,本公开所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于展示的数据、分析的数据等),均为经用户授权或者经过各方充分授权的信息和数据。
58.图1是根据一示例性实施例示出的一种页面异常识别方法的流程图,如图1所示,该页面异常识别方法用于终端中,包括以下步骤:
59.在步骤s110中,获取待检测页面的单位时间传输帧数数组;单位时间传输帧数数组中包括待检测页面的多个依序排列的单位时间传输帧数。
60.其中,待检测页面是指需要检测是否出现异常(比如卡顿)的页面,比如信息浏览页面、视频浏览页面、图片浏览页面等。
61.其中,单位时间传输帧数是指单位时间内所传输的帧的数量,比如每秒传输帧数(fps)。
62.其中,单位时间传输帧数数组中存储有待检测页面的多个单位时间传输帧数,比如[10,20,29,35,55,60],这些单位时间传输帧数都是按照获取时间排序的;获取时间是指获取待检测页面的单位时间传输帧数的时间。
[0063]
具体地,终端从存储有多个页面的单位时间传输帧数数组中,获取待检测页面的单位时间传输帧数数组,从而得到待检测页面的多个单位时间传输帧数。
[0064]
在步骤s120中,从单位时间传输帧数数组中,确定出连续低于单位时间传输帧数阈值的单位时间传输帧数的目标数量。
[0065]
其中,单位时间传输帧数阈值是指单位时间传输帧数的临界值,具体是指每秒传输帧数阈值,比如30。当然,单位时间传输帧数阈值还可以是指其他数值,也可以根据实际情况进行调整,在此不做具体限定。
[0066]
其中,目标数量是指单位时间传输帧数数组中,连续低于单位时间传输帧数阈值的单位时间传输帧数的总数量。例如,单位时间传输帧数数组为[10,20,29,35,55,60],10、20、29这几个单位时间传输帧数连续,且均低于单位时间传输帧数阈值30,则说明连续低于单位时间传输帧数阈值的单位时间传输帧数的总数量为3,进而说明目标数量为3。
[0067]
具体地,终端依序将单位时间传输帧数数组中的每个单位时间传输帧数与单位时间传输帧数阈值进行比较,得到计较结果;根据比较结果,确定出该单位时间传输帧数数组中,连续低于单位时间传输帧数阈值的单位时间传输帧数的总数量,作为目标数量。
[0068]
举例说明,在每秒传输帧数数组[10,20,29,35,55,60]中,10、20、29这几个每秒传输帧数连续,且均低于每秒传输帧数阈值30,则说明该每秒传输帧数数组中,连续低于每秒传输帧数阈值的每秒传输帧数的目标数量为3。
[0069]
在步骤s130中,根据目标数量,确定对待检测页面的异常识别结果。
[0070]
其中,待检测页面的异常识别结果用于描述待检测页面是否异常,具体用于描述待检测页面是否卡顿。
[0071]
具体地,当单位时间传输帧数数组中连续低于单位时间传输帧数阈值的单位时间传输帧数的目标数量,大于或者等于预设数量时,说明存在连续多个单位时间传输帧数小于单位时间传输帧数阈值,则确认待检测页面异常。
[0072]
上述页面异常识别方法中,通过获取待检测页面的单位时间传输帧数数组;单位时间传输帧数数组中包括待检测页面的多个依序排列的单位时间传输帧数;然后从单位时间传输帧数数组中,确定出连续低于单位时间传输帧数阈值的单位时间传输帧数的目标数量;最后根据目标数量,确定对待检测页面的异常识别结果;这样,通过考虑连续低于单位时间传输帧数阈值的单位时间传输帧数的总数量,可以准确判断待检测页面在一段连续时间段内的运行情况,而不是仅仅考虑某一时刻的单位时间传输帧数,从而避免了通过某一时刻的单位时间传输帧数来识别页面是否异常,导致页面异常识别的准确率较低的缺陷,进而提高了页面异常识别的准确率。
[0073]
在一示例性实施例中,在步骤s130中,根据目标数量,确定对待检测页面的异常识别结果,包括:当目标数量大于或者等于预设数量时,确定待检测页面异常。
[0074]
其中,预设数量是指单位时间传输帧数数组中,连续低于单位时间传输帧数阈值的单位时间传输帧数的临界数量;预设数量大于或者等于2,也可以根据实际情况进行调整,在此不做具体限定。
[0075]
举例说明,在每秒传输帧数数组[10,20,29,35,55,60]中,10、20、29这三个每秒传输帧数连续,且均低于每秒传输帧数阈值30,则说明该每秒传输帧数数组中,连续低于每秒传输帧数阈值的每秒传输帧数的目标数量为3,与预设数量3相等,说明待检测页面存在连续多个每秒传输帧数都小于每秒传输帧数阈值,进而说明待检测页面出现卡顿。
[0076]
需要说明的是,某个时刻的每秒传输帧数较低,并不能代表待检测页面出现卡顿,
只有通过多个连续的每秒传输帧数的组合运算,才能反映出那段时间内待检测页面是否卡顿。当发现某一时刻的每秒传输帧数偏低之后,不会立刻认为待检测页面出现卡顿,而是结合后续的多个连续时间段内算出的多个每秒传输帧数的情况,来判断待检测页面的卡顿情况。
[0077]
本公开实施例提供的技术方案,在待检测页面的单位时间传输帧数数组中,连续低于单位时间传输帧数阈值的单位时间传输帧数的目标数量大于或者等于预设数量的情况下,确定待检测页面异常;综合考虑连续低于单位时间传输帧数阈值的单位时间传输帧数的总数量,可以准确判断待检测页面在一段连续时间段内的运行情况,从而准确判断出待检测页面是否异常,进而提高了页面异常识别的准确率。
[0078]
在一示例性实施例中,如图2所示,在步骤s130中,根据目标数量,确定对待检测页面的异常识别结果,具体可以通过以下步骤实现:
[0079]
在步骤s210中,当目标数量小于预设数量时,从单位时间传输帧数数组中,识别出目标单位时间传输帧数的下一个单位时间传输帧数;目标单位时间传输帧数为连续低于单位时间传输帧数阈值的单位时间传输帧数中的最后一个单位时间传输帧数。
[0080]
在步骤s220中,统计连续低于单位时间传输帧数阈值的单位时间传输帧数,以及目标单位时间传输帧数的下一个单位时间传输帧数的平均值。
[0081]
在步骤s230中,当平均值小于单位时间传输帧数阈值时,确定待检测页面异常。
[0082]
其中,下一个单位时间传输帧数可以大于单位时间传输帧数阈值,也可以等于单位时间传输帧数阈值,具体本公开不做限定。
[0083]
具体地,在待检测页面的单位时间传输帧数数组中,连续低于单位时间传输帧数阈值的单位时间传输帧数的目标数量小于预设数量的情况下,终端将连续低于单位时间传输帧数阈值的单位时间传输帧数中的最后一个单位时间传输帧数,确定为目标单位时间传输帧数;从单位时间传输帧数数组中,获取目标单位时间传输帧数的下一个单位时间传输帧数;将连续低于单位时间传输帧数阈值的单位时间传输帧数与目标单位时间传输帧数的下一个单位时间传输帧数进行相加,并计算其平均值;在平均值大于或者等于单位时间传输帧数阈值的情况下,确定待检测页面正常;在平均值小于单位时间传输帧数阈值的情况下,确定待检测页面异常。
[0084]
举例说明,在每秒传输帧数数组[10,20,51,35,55,60]中,10、20这两个每秒传输帧数连续,且均低于每秒传输帧数阈值30,则说明该每秒传输帧数数组中,连续低于每秒传输帧数阈值的每秒传输帧数的目标数量为2,小于预设数量3;在这种情况下,可以结合连续低于每秒传输帧数阈值的每秒传输帧数的下一个每秒传输帧数51,统计出平均值,来判断待检测页面是否异常;其中,连续低于每秒传输帧数阈值的每秒传输帧数和下一个每秒传输帧数的平均值为(10+20+51)/3=27,小于30,说明待检测页面异常。
[0085]
本公开实施例提供的技术方案,在待检测页面的单位时间传输帧数数组中,连续低于单位时间传输帧数阈值的单位时间传输帧数的目标数量小于预设数量的情况下,结合连续低于单位时间传输帧数阈值的单位时间传输帧数的下一个单位时间传输帧数,统计出平均值,来判断待检测页面是否异常,综合考虑连续低于单位时间传输帧数阈值的单位时间传输帧数及其下一个单位时间传输帧数,有利于提高页面异常识别的准确率。
[0086]
在一示例性实施例中,在步骤s110中,在获取待检测页面的单位时间传输帧数数
组之前,还包括:获取待检测页面的多个单位时间传输帧数;每个单位时间传输帧数标识有对应的获取时间;按照获取时间从小到大的顺序,将多个单位时间传输帧数存储至单位时间传输帧数数组。
[0087]
举例说明,终端依次获取待检测页面的多个单位时间传输帧数,并按照获取时间从小到大的顺序,将多个单位时间传输帧数存储至单位时间传输帧数数组,得到待检测页面的单位时间传输帧数数组,比如[10,20,51,35,55,60]。
[0088]
本公开实施例提供的技术方案,通过将待检测页面的多个单位时间传输帧数,按照获取时间从小到大的顺序,存储至单位时间传输帧数数组中,有利于后续从待检测页面的单位时间传输帧数数组中,确定出连续低于单位时间传输帧数阈值的单位时间传输帧数的目标数量,进而判断待检测页面是否异常,综合考虑了多个连续低于单位时间传输帧数阈值的单位时间传输帧数,有利于提高页面异常识别的准确率。
[0089]
在一示例性实施例中,获取待检测页面的多个单位时间传输帧数,包括:当待检测页面处于可见状态时,对待检测页面的帧请求事件进行监听;当监听到待检测页面的帧请求事件时,对待检测页面的帧请求事件的执行次数进行更新,并记录待检测页面的帧请求事件的执行时间戳;当执行时间戳与开始时间戳之间的差值大于预设差值时,根据差值和更新后的执行次数,统计待检测页面的单位时间传输帧数;开始时间戳表示本次统计单位时间传输帧数的开始时间;当执行时间戳与开始时间戳之间的差值小于或者等于预设差值时,则重新对待检测页面的帧请求事件进行监听,直到监听到的帧请求事件的执行时间戳与开始时间戳之间的差值大于预设差值。
[0090]
其中,待检测页面处于可见状态,是指待检测页面显示在当前终端界面上。帧请求事件用于请求帧。需要说明的是,帧请求事件是系统自动执行的定时任务,如果页面不卡顿,一般是16.6ms执行一次,如果页面卡顿,则会超过16.6ms执行一次。另外,当待检测页面位于前端时,帧请求事件会自动运行,当待检测页面位于后台或者切换到其他页面时,帧请求事件停止运行。
[0091]
其中,每监听到待检测页面的帧请求事件,则会对待检测页面的帧请求事件的执行次数进行加1操作,以更新待检测页面的帧请求事件的执行次数。
[0092]
其中,帧请求事件的执行时间戳,是指当前执行帧请求事件的时间值;开始时间戳是指本次统计单位时间传输帧数的开始时间值,当得到一个单位时间传输帧数之后,则重新记录开始时间戳,以进行下一个单位时间传输帧数的统计。预设差值具体是指1秒。
[0093]
其中,监听到的帧请求事件的执行时间戳,是指新的执行时间戳。
[0094]
具体地,当待检测页面处于可见状态时,终端记录开始时间戳t1,并对待检测页面的帧请求事件进行监听;在监听到待检测页面的帧请求事件的情况下,对待检测页面的帧请求事件的执行次数f进行加1操作,得到更新后的执行次数f,并记录待检测页面的帧请求事件的执行时间戳t2;在执行时间戳t2与开始时间戳t1之间的差值大于预设差值(比如1秒)的情况下,待检测页面的单位时间传输帧数为f/[(t2-t1)
×
1000],将该单位时间传输帧数存储至单位时间传输帧数数组中,并重新记录开始时间戳t1,以进行下一个单位时间传输帧数的统计。在执行时间戳t2与开始时间戳t1之间的差值小于或者等于预设差值(比如1秒)的情况下,终端保留开始时间戳t1,并继续对待检测页面的帧请求事件进行监听;在监听到待检测页面的帧请求事件的情况下,对待检测页面的帧请求事件的执行次数f进行
加1操作,得到更新后的执行次数f,并记录待检测页面的帧请求事件的执行时间戳t2,该执行时间戳为新的执行时间戳;在新的执行时间戳t2与开始时间戳t1之间的差值大于预设差值(比如1秒)的情况下,待检测页面的单位时间传输帧数为f/[(新的t2-t1)
×
1000],将该单位时间传输帧数存储至单位时间传输帧数数组中,并重新记录开始时间戳t1,以进行下一个单位时间传输帧数的统计。通过重复上述过程,可以得到待检测页面的多个单位时间传输帧数。
[0095]
本公开实施例提供的技术方案,在待检测页面处于可见状态时,通过对待检测页面的帧请求事件进行监听,并在监听到的帧请求事件的执行时间戳与开始时间戳之间的差值大于预设差值的情况下,根据差值和更新后的执行次数,统计出待检测页面的单位时间传输帧数,有利于提高单位时间传输帧数的确定准确率。
[0096]
在一示例性实施例中,本公开提供的页面异常识别方法还包括:当待检测页面处于不可见状态时,停止对待检测页面的帧请求事件进行监听,并统计待检测页面处于不可见状态的总时间;根据差值和更新后的执行次数,统计待检测页面的单位时间传输帧数,具体包括:将差值与待检测页面处于不可见状态的总时间进行相减,得到更新后的差值;根据更新后的差值和更新后的执行次数,统计待检测页面的单位时间传输帧数。
[0097]
其中,待检测页面处于不可见状态,是指待检测页面处于后台,或者待检测页面切换到其他页面,并没有出现在当前终端界面上。
[0098]
其中,当待检测页面处于不可见状态时,帧请求事件停止运行;这个时候,通过待检测页面处于不可见状态的总时间,可以表示帧请求事件停止运行的总时间。需要说明的是,如果不考虑待检测页面处于后台或者切换到其他页面,会忽略帧请求事件停止运行的总时间,导致统计出的单位时间传输帧数偏小,进而造成页面异常识别的准确率偏低。
[0099]
具体地,在待检测页面处于不可见状态的情况下,停止对待检测页面的帧请求事件进行监听,并统计待检测页面处于不可见状态的总时间;当待检测页面处于可见状态时,重新对待检测页面的帧请求事件进行监听,在监听到待检测页面的帧请求事件的情况下,对待检测页面的帧请求事件的执行次数f进行加1操作,得到更新后的执行次数f,并记录待检测页面的帧请求事件的执行时间戳t2;在执行时间戳t2与开始时间戳t1之间的差值大于预设差值(比如1秒)的情况下,待检测页面的单位时间传输帧数为f/[(t2-t1-总时间)
×
1000],将该单位时间传输帧数存储至单位时间传输帧数数组中,并重新记录开始时间戳t1,以进行下一个单位时间传输帧数的统计。
[0100]
本公开实施例提供的技术方案,在统计待检测页面的单位时间传输帧数时,综合考虑待检测页面处于不可见状态的总时间,有利于综合考虑帧请求事件停止运行的总时间,进一步提高了单位时间传输帧数的确定准确率;避免了忽略帧请求事件停止运行的总时间,导致统计出的单位时间传输帧数偏小,进而造成页面异常识别的准确率偏低的缺陷,进一步提高了页面异常识别的准确率。
[0101]
在一示例性实施例中,在步骤s110中,获取待检测页面的单位时间传输帧数数组,包括:获取待检测页面的页面标识;获取与页面标识对应的单位时间传输帧数数组,作为待检测页面的单位时间传输帧数数组。
[0102]
其中,待检测页面的页面标识是指待检测页面的唯一标识信息,比如页面名称、页面编号等。
[0103]
举例说明,终端通过页面标识获取指令,获取待检测页面的页面标识;从预设的页面标识与单位时间传输帧数数组的对应关系中,获取与待检测页面的页面标识对应的单位时间传输帧数数组,作为待检测页面的单位时间传输帧数数组。
[0104]
本公开实施例提供的技术方案,根据待检测页面的页面标识,查询预设的页面标识与单位时间传输帧数数组的对应关系,有利于快速获取待检测页面的单位时间传输帧数数组,从而提高了待检测页面的单位时间传输帧数数组的获取效率。
[0105]
图3是根据一示例性实施例示出的另一种页面异常识别方法的流程图,如图3所示,该页面异常识别方法用于终端中,包括以下步骤:
[0106]
在步骤s310中,当待检测页面处于可见状态时,对待检测页面的帧请求事件进行监听;当监听到待检测页面的帧请求事件时,对待检测页面的帧请求事件的执行次数进行更新,并记录待检测页面的帧请求事件的执行时间戳。
[0107]
在步骤s320中,当执行时间戳与开始时间戳之间的差值大于预设差值时,根据差值和更新后的执行次数,统计待检测页面的单位时间传输帧数;开始时间戳表示本次统计单位时间传输帧数的开始时间。
[0108]
在步骤s330中,当执行时间戳与开始时间戳之间的差值小于或者等于预设差值时,则重新对待检测页面的帧请求事件进行监听,直到监听到的帧请求事件的执行时间戳与开始时间戳之间的差值大于预设差值,则执行步骤s320。
[0109]
在步骤s340中,当待检测页面处于不可见状态时,停止对待检测页面的帧请求事件进行监听,统计待检测页面处于不可见状态的总时间;当执行时间戳与开始时间戳之间的差值大于预设差值时,将差值与总时间进行相减,得到更新后的差值;根据更新后的差值和更新后的执行次数,统计待检测页面的单位时间传输帧数。
[0110]
在步骤s350中,将待检测页面的多个单位时间传输帧数,按照获取时间从小到大的顺序,存储至待检测页面的单位时间传输帧数数组;每个单位时间传输帧数标识有对应的获取时间。
[0111]
在步骤s360中,获取待检测页面的单位时间传输帧数数组;从单位时间传输帧数数组中,确定出连续低于单位时间传输帧数阈值的单位时间传输帧数的目标数量。
[0112]
在步骤s370中,当目标数量大于或者等于预设数量时,确定待检测页面异常。
[0113]
在步骤s380中,当目标数量小于预设数量时,从单位时间传输帧数数组中,识别出目标单位时间传输帧数的下一个单位时间传输帧数;目标单位时间传输帧数为连续低于单位时间传输帧数阈值的单位时间传输帧数中的最后一个单位时间传输帧数。
[0114]
在步骤s390中,统计连续低于单位时间传输帧数阈值的单位时间传输帧数,以及目标单位时间传输帧数的下一个单位时间传输帧数的平均值;当平均值小于单位时间传输帧数阈值时,确定待检测页面异常。
[0115]
上述页面异常识别方法中,通过考虑连续低于单位时间传输帧数阈值的单位时间传输帧数的总数量,可以准确判断待检测页面在一段连续时间段内的运行情况,而不是仅仅考虑某一时刻的单位时间传输帧数,从而避免了通过某一时刻的单位时间传输帧数来识别页面是否异常,导致页面异常识别的准确率较低的缺陷,进而提高了页面异常识别的准确率;同时,考虑待检测页面是否处于可见状态,有利于综合考虑帧请求事件停止运行的总时间,进一步提高了单位时间传输帧数的获取准确率;避免了忽略帧请求事件停止运行的
总时间,导致统计出的单位时间传输帧数偏小,进而造成页面异常识别的准确率偏低的缺陷,进一步提高了页面异常识别的准确率。
[0116]
为了更清晰阐明本公开实施例提供的页面异常识别方法,以下以一个具体的实施例对该页面异常识别方法进行具体说明。在一示例性实施例中,通过准确计算每秒传输帧数,并结合多个连续每秒传输帧数的计算情况,来判断页面的卡顿情况。具体包括如下内容:
[0117]
步骤一:参考图4,在用户一直在当前页面浏览的情况下,启动每秒传输帧数计算流程,开始执行帧请求事件的监听,同时记录初次开始执行的时间戳t1。每当执行一遍帧请求事件,则帧请求事件的执行次数f加1,同时判断每个执行帧请求事件的时刻t2与初始时间戳t1之间的差,如果大于1秒则计算每秒传输帧数;其中,每秒传输帧数=f/[(t2-t1)
×
1000]。在获得这一秒内的每秒传输帧数之后,将其存入每秒传输帧数数组中。重复执行这个过程,每秒传输帧数数组内会不断添加每秒的每秒传输帧数。在启动每秒传输帧数的计算流程时,除了开始执行帧请求事件的监听,同时也开始执行页面可见性改变事件的监听。当用户离开本页面时,比如用户切换页面到后台或者切换到浏览器中的其他页面,在页面可见性改变事件的回调中停止帧请求事件的监听;等用户回到本页面时,重启帧请求事件的监听,这样就避免了由于页面处于后台而停止帧请求事件的执行次数f的增加,造成统计得到的每秒传输帧数偏小的情况,便能准确计算出每秒传输帧数。
[0118]
步骤二:通过结合多个每秒传输帧数,来判断页面的卡顿情况,而不是通过单个每秒传输帧数值来判断页面的卡顿情况。通过步骤一,已经将所有的每秒传输帧数存放在了每秒传输帧数数组中,然后需要对每秒传输帧数数组中的每秒传输帧数进行分析,最后通过分析结果确定页面卡顿情况。具体分析流程如下:
[0119]
(1)在每秒传输帧数数组中,若连续n个每秒传输帧数低于每秒传输帧数阈值,则认为页面卡顿。其中,n和每秒传输帧数阈值可以根据实际情况确定。
[0120]
(2)在每秒传输帧数数组中,若出现每秒传输帧数低于每秒传输帧数阈值,则将该每秒传输帧数记录下来,并存储至统计数组中;若记录的次数连续达到n次,则认为页面卡顿;若记录的低于每秒传输帧数阈值的每秒传输帧数的次数没有连续达到n次,则直至每秒传输帧数超过每秒传输帧数阈值的那一次计算为止,将此次每秒传输帧数和之前统计数组中存储的每秒传输帧数的平均值和每秒传输帧数阈值进行比较,若该平均值低于每秒传输帧数阈值,则确认页面卡顿;若该平均值大于或者等于每秒传输帧数,则确认页面正常。
[0121]
上述页面异常识别方法中,可以达到以下技术效果:(1)通过对每秒传输帧数进行准确计算,有利于提高每秒传输帧数的确定准确率。(2)通过综合考虑多个连续的每秒传输帧数,有利于准确反映页面的卡顿情况,从而提高了页面异常识别的准确率。
[0122]
应该理解的是,虽然图1-图3的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图1-图3中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
[0123]
可以理解的是,本说明书中上述方法的各个实施例之间相同/相似的部分可互相参见,每个实施例重点说明的是与其他实施例的不同之处,相关之处参见其他方法实施例的说明即可。
[0124]
图5是根据一示例性实施例示出的一种页面异常识别装置的框图。参照图x,该装置包括获取单元510,确定单元520和识别单元530。
[0125]
获取单元510,被配置为执行获取待检测页面的单位时间传输帧数数组;单位时间传输帧数数组中包括待检测页面的多个依序排列的单位时间传输帧数。
[0126]
确定单元520,被配置为执行从单位时间传输帧数数组中,确定出连续低于单位时间传输帧数阈值的单位时间传输帧数的目标数量。
[0127]
识别单元530,被配置为执行根据目标数量,确定对待检测页面的异常识别结果。
[0128]
在一示例性实施例中,识别单元530,还被配置为执行当目标数量大于或者等于预设数量时,确定待检测页面异常。
[0129]
在一示例性实施例中,识别单元530,还被配置为执行当目标数量小于预设数量时,从单位时间传输帧数数组中,识别出目标单位时间传输帧数的下一个单位时间传输帧数;目标单位时间传输帧数为连续低于单位时间传输帧数阈值的单位时间传输帧数中的最后一个单位时间传输帧数;统计连续低于单位时间传输帧数阈值的单位时间传输帧数,以及目标单位时间传输帧数的下一个单位时间传输帧数的平均值;当平均值小于单位时间传输帧数阈值时,确定待检测页面异常。
[0130]
在一示例性实施例中,页面异常识别装置还包括存储单元,被配置为执行获取待检测页面的多个单位时间传输帧数;每个单位时间传输帧数标识有对应的获取时间;按照获取时间从小到大的顺序,将多个单位时间传输帧数存储至单位时间传输帧数数组。
[0131]
在一示例性实施例中,存储单元,还被配置为执行当待检测页面处于可见状态时,对待检测页面的帧请求事件进行监听;当监听到待检测页面的帧请求事件时,对待检测页面的帧请求事件的执行次数进行更新,并记录待检测页面的帧请求事件的执行时间戳;当执行时间戳与开始时间戳之间的差值大于预设差值时,根据差值和更新后的执行次数,统计待检测页面的单位时间传输帧数;开始时间戳表示本次统计单位时间传输帧数的开始时间;当执行时间戳与开始时间戳之间的差值小于或者等于预设差值时,则重新对待检测页面的帧请求事件进行监听,直到监听到的帧请求事件的执行时间戳与开始时间戳之间的差值大于预设差值。
[0132]
在一示例性实施例中,页面异常识别装置还包括统计单元,被配置为执行当待检测页面处于不可见状态时,停止对待检测页面的帧请求事件进行监听,并统计待检测页面处于不可见状态的总时间;
[0133]
存储单元,还被配置为执行将差值与待检测页面处于不可见状态的总时间进行相减,得到新的差值;根据新的差值和更新后的执行次数,统计待检测页面的单位时间传输帧数。
[0134]
在一示例性实施例中,获取单元510,还被配置为执行获取待检测页面的页面标识;获取与页面标识对应的单位时间传输帧数数组,作为待检测页面的单位时间传输帧数数组。
[0135]
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法
的实施例中进行了详细描述,此处将不做详细阐述说明。
[0136]
图6是根据一示例性实施例示出的一种用于执行页面异常识别方法的电子设备600的框图。例如,电子设备600可以是移动电话、计算机、数字广播终端、消息收发设备、游戏控制台、平板设备、医疗设备、健身设备、个人数字助理等。
[0137]
参照图6,电子设备600可以包括以下一个或多个组件:处理组件602、存储器604、电源组件606、多媒体组件608、音频组件610、输入/输出(i/o)的接口612、传感器组件614以及通信组件616。
[0138]
处理组件602通常控制电子设备600的整体操作,诸如与显示、电话呼叫、数据通信、相机操作和记录操作相关联的操作。处理组件602可以包括一个或多个处理器620来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件602可以包括一个或多个模块,便于处理组件602和其他组件之间的交互。例如,处理组件602可以包括多媒体模块,以方便多媒体组件608和处理组件602之间的交互。
[0139]
存储器604被配置为存储各种类型的数据以支持在电子设备600的操作。这些数据的示例包括用于在电子设备600上操作的任何应用程序或方法的指令、联系人数据、电话簿数据、消息、图片、视频等。存储器604可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(sram)、电可擦除可编程只读存储器(eeprom)、可擦除可编程只读存储器(eprom)、可编程只读存储器(prom)、只读存储器(rom)、磁存储器、快闪存储器、磁盘、光盘或石墨烯存储器。
[0140]
电源组件606为电子设备600的各种组件提供电力。电源组件606可以包括电源管理系统,一个或多个电源,及其他与为电子设备600生成、管理和分配电力相关联的组件。
[0141]
多媒体组件608包括在所述电子设备600和用户之间的提供输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(lcd)和触摸面板(tp)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件608包括前置摄像头和/或后置摄像头。当电子设备600处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是固定的光学透镜系统或具有焦距和光学变焦能力。
[0142]
音频组件610被配置为输出和/或输入音频信号。例如,音频组件610包括麦克风(mic),当电子设备600处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器604或经由通信组件616发送。在一些实施例中,音频组件610还包括扬声器,用于输出音频信号。
[0143]
i/o接口612为处理组件602和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。
[0144]
传感器组件614包括一个或多个传感器,用于为电子设备600提供各个方面的状态评估。例如,传感器组件614可以检测到电子设备600的打开/关闭状态,组件的相对定位,例如所述组件为电子设备600的显示器和小键盘,传感器组件614还可以检测电子设备600或电子设备600组件的位置改变,用户与电子设备600接触的存在或不存在,设备600方位或加
速/减速和电子设备600的温度变化。传感器组件614可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件614还可以包括光传感器,如cmos或ccd图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件614还可以包括加速度传感器、陀螺仪传感器、磁传感器、压力传感器或温度传感器。
[0145]
通信组件616被配置为便于电子设备600和其他设备之间有线或无线方式的通信。电子设备600可以接入基于通信标准的无线网络,如wifi,运营商网络(如2g、3g、4g或5g),或它们的组合。在一个示例性实施例中,通信组件616经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件616还包括近场通信(nfc)模块,以促进短程通信。例如,在nfc模块可基于射频识别(rfid)技术,红外数据协会(irda)技术,超宽带(uwb)技术,蓝牙(bt)技术和其他技术来实现。
[0146]
在示例性实施例中,电子设备600可以被一个或多个应用专用集成电路(asic)、数字信号处理器(dsp)、数字信号处理设备(dspd)、可编程逻辑器件(pld)、现场可编程门阵列(fpga)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述方法。
[0147]
在示例性实施例中,还提供了一种包括指令的计算机可读存储介质,例如包括指令的存储器604,上述指令可由电子设备600的处理器620执行以完成上述方法。例如,计算机可读存储介质可以是rom、随机存取存储器(ram)、cd-rom、磁带、软盘和光数据存储设备等。
[0148]
在示例性实施例中,还提供一种计算机程序产品,所述计算机程序产品中包括指令,上述指令可由电子设备600的处理器620执行以完成上述方法。
[0149]
需要说明的,上述的装置、电子设备、计算机可读存储介质、计算机程序产品等根据方法实施例的描述还可以包括其他的实施方式,具体的实现方式可以参照相关方法实施例的描述,在此不作一一赘述。
[0150]
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本公开旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由权利要求指出。
[0151]
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1