WebView、JsError、Web 网络监控

最近更新时间:2025-06-20 15:35:11

我的收藏
注意:
如果使用 手动集成 的方式,需要将 framework 里面的 QAPMResourceFile.bundle 下的 js_sdk 以 Add Files to 方式引入到工程中;如果使用 CocoaPods 集成 方式则不需要。

功能说明

该功能能够监控 Web 网络资源加载耗时和 jserror 监控。

相关接口

@interface QAPMWebViewProfile : NSObject
/**
@param breadCrumbBuckets 自定义上报 webview 移动分析部分的分桶,属于预埋参数
@return 返回注入的基本信息,包含 QAPM 的初始化信息
*/
+ (NSString *)qapmBaseInfo:(NSString *) breadCrumbBuckets;

/**
@return 注入启动 js 监控的信息,请在qapmBaseInfo方法调用完之后调用
*/
+ (NSString *)qapmJsStart;
@end

代码示例

在工程对应的类里面导入 #import <QAPM/QAPMWebViewProfile.h> 头文件,在 WKWebView 的代理方法 didFinishNavigation 中添加如下代码。
- (void)webView:(WKWebView *)webView didFinishNavigation:(WKNavigation *)navigation{
[webView evaluateJavaScript:[QAPMWebViewProfile qapmBaseInfo:@""] completionHandler:nil];
[webView evaluateJavaScript:[QAPMWebViewProfile qapmJsStart] completionHandler:nil];
}

校验功能是否正常

检索 Plugin:41,如打印以下日志,则代表 WebView 个例上报成功。

检索 Plugin:43,如打印以下日志,则代表 jserror 个例上报成功。

检索 Plugin:54,如打印以下日志,则代表 WebView 的网络上报成功。

注意:
网络请求只有在网络错误和网络慢时才会上报。