[发明专利]页面加载时长的确定方法、装置、设备及存储介质在审
申请号: | 202010345560.6 | 申请日: | 2020-04-27 |
公开(公告)号: | CN111581558A | 公开(公告)日: | 2020-08-25 |
发明(设计)人: | 於林涛 | 申请(专利权)人: | 北京达佳互联信息技术有限公司 |
主分类号: | G06F16/957 | 分类号: | G06F16/957 |
代理公司: | 北京博思佳知识产权代理有限公司 11415 | 代理人: | 辛姗姗 |
地址: | 100085 北京市海淀*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 页面 加载 确定 方法 装置 设备 存储 介质 | ||
本公开关于一种页面加载时长的确定方法、装置、设备及存储介质,所述页面包括:主视图和多级子视图,所述方法包括:使用每级子视图向下级子视图发送主视图信息,响应于所述每级子视图完成布局,使所述每级子视图根据所述主视图信息向主视图发送布局时间,根据所述主视图接收的各级子视图的布局时间和所述主视图的布局时间,确定所述页面的页面加载时长。本公开提供了一种确定页面加载时长的新方法,基于各级视图的布局时间确定页面加载时长,确定结果准确度高。
技术领域
本公开涉及数据处理技术领域,尤其涉及一种页面加载时长的确定方法、装置、设备及存储介质。
背景技术
iOS系统是由苹果公司开发的移动操作系统,通常在iOS系统上安装的应用程序设有一组视图控制器,用于对用户界面的显示内容进行管理。视图管理器通过依次调用一些函数实现对象管理,视图管理器依次调用的函数主要包括:initWithCoder函数、awakeFromNib函数、viewDidLoad函数、viewWillAppear函数、viewWillLayoutSubviews函数、viewDidLayoutSubviews函数和viewDidAppear函数。
页面加载时长用于衡量用户感受到的页面加载所需的时间,目前使用viewDidAppear函数的调用时间减去viewDidLoad函数的调用时间,将所得的时间差确定为页面加载时长。参见图1,使用viewDidAppear函数和viewDidLoad函数的调用时间计算的页面加载时长为T1。
实现上,一方面,为提高用户体验,开发者会使用一些手段延迟页面中部分数据的加载时机,例如延迟网络请求、分页加载或懒加载的加载时机,另一方面,页面中一些视图可能需要多次加载,参见图1,基于上述因素导致的页面加载时长T等于T3结束时间-T1开始时间。
通过比较可知,T1相对于T存在较大偏差,使用viewDidAppear函数和viewDidLoad函数的调用时间计算的页面加载时长T1不够准确。
发明内容
本公开提供一种页面加载时长的确定方法、装置及系统,以至少解决相关技术中利用viewDidAppear函数和viewDidLoad函数的调用时间计算的页面加载时长不够准确的技术问题。本公开的技术方案如下:
根据本公开实施例的第一方面,提供一种页面加载时长的确定方法,所述页面包括:主视图和多级子视图,所述方法包括:
使用每级子视图向下级子视图发送主视图信息;
响应于所述每级子视图完成布局,使所述每级子视图根据所述主视图信息向主视图发送布局时间;
根据所述主视图接收的各级子视图的布局时间和所述主视图的布局时间,确定所述页面的页面加载时长。
在一实施例中,所述使用每级子视图向下级子视图发送主视图信息,包括:
使用所述每级子视图将所述主视图信息存储在所述下级子视图对应的存储空间中,使得所述下级子视图从所述存储空间中获取所述主视图信息。
在一实施例中,所述布局时间包括:布局开始时间和布局结束时间;所述根据所述主视图接收的各级子视图的布局时间和所述主视图的布局时间,确定所述页面的页面加载时长,包括:
基于所述每级子视图的布局时间,确定所述多级子视图最后一次进行视图布局的第一布局结束时间;
确定所述第一布局结束时间距当前时间的时长是否大于目标超时阈值;
若是,则计算所述第一布局结束时间与所述主视图的布局开始时间的差值;
根据所述差值确定所述页面加载时长。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京达佳互联信息技术有限公司,未经北京达佳互联信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010345560.6/2.html,转载请声明来源钻瓜专利网。