iOS 网页加载时间监控方案实现

本文介绍了如何在iOS App中实现无侵入的网页加载时间监控,通过Hook UIWebView的setDelegate方法,转发并处理网页加载的业务逻辑。项目提供了监控UIWebView和WKWebView网页加载时间的能力,同时指出了实现过程中需要注意的事项。
摘要由CSDN通过智能技术生成

最近因为要做App的性能监控,网页加载时间是性能的一个指标,所以在网上查阅了一些资料,实现了无侵入网页加载时间的监控,不仅可以监控网页的加载时间,网页内部的链接也可以监控到

项目地址:无侵入实现网页加载时间监控

实现方案:

1.利用OC的runtime特性,Hook UIWebView的setDelegate方法,转发到自己定义的方法,代码如下


2.把代理的回调方法转发到自己定义方法,再回调代理方法,代码如下


3.在自定义的方法中处理网页加载时间的业务逻辑,代码如下


4.在开启性能监控的地方接收发送的通知,进行网页时间的统计,代码如下


大体实现方案就如上图代码。

需要注意的地方:1、因为是通过转发代理方法的方式实现的,所以代理方法一定要实现,否则监控不到

                        2、目前只列出了UIWebView的实现,WKWebView实现方式跟UIWebView一致。

大家有什么好的方案,欢迎讨论

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值