跳转至

WebView 数据监测

本文适用于 Cocos Creator Android/iOS 原生构建中通过 WebView 组件加载的 Web 页面。Web Mobile / Web Desktop 构建请参考 Web 接入。

App 侧配置

先完成 SDK 初始化 和 RUM 配置,在加载 WebView 页面前初始化 RUM。

独立运行模式下,在现有 guanceSdk.start() 配置中设置 WebView 参数,应用生命周期内只初始化一次:

guanceSdk.start({
  sdk: {
    datakitUrl: 'https://your-datakit.example.com',
    allowWebViewHost: ['example.com'],
  },
  rum: {
    androidAppId: 'android-rum-app-id',
    iosAppId: 'ios-rum-app-id',
    enableTraceWebView: true,
  },
  // 需要采集 WebView 页面日志时配置。
  logger: {
    enableWebViewLog: true,
  },
});
  • rum.enableTraceWebView 控制 WebView RUM,默认 true。设置为 false 只关闭 WebView RUM,不影响已开启的 WebView 日志。
  • sdk.allowWebViewHost 同时控制 WebView RUM 和日志的 Bridge host 范围。null 允许所有 host,空数组 [] 禁止所有 host;未设置时保留原生 SDK 默认行为。配置位置与匹配规则见 WebView host 配置。
  • logger.enableWebViewLog 控制 WebView 日志,默认 false。页面还需初始化 Browser Logs SDK,详见 WebView 日志。

这些参数作用于 Android/iOS 原生构建中的 WebView,不映射为 Web Mobile / Web Desktop 的 Browser SDK 配置。更新 Cocos SDK 后,需重新运行安装器并构建原生工程,使 TypeScript 类型、Bridge 和配套原生依赖保持一致。

原生宿主 Hybrid 场景由宿主完成 SDK、RUM 和 Log 初始化,Cocos 通过 attach() 接入,不使用上述 start() 示例重复初始化。宿主侧配置见 Android WebView 监测和 iOS WebView 数据监测,Cocos 接入方式见 原生与 Cocos 混合开发。

Android Plugin 配置

Cocos 构建扩展不会自动应用 ft-plugin,WebView Bridge 自动注入需要完成以下配置:

  1. 在生成的 Android 原生工程中,按 Android Plugin 接入添加 Maven 仓库与插件依赖,并根据 Android Gradle Plugin(AGP)版本选择 ft-plugin 或 ft-plugin-legacy。
  2. 在应用主模块的 build.gradle(通常为 app/build.gradle)中应用插件,并在 FTExt 中补充自定义 WebView 类识别。例如,使用 org.cocos2dx.lib.Cocos2dxWebView 的工程配置如下:

    apply plugin: 'ft-plugin'
    
    FTExt {
        knownWebViewClasses = ['org.cocos2dx.lib.Cocos2dxWebView']
    }
    

    工程已应用插件时,无需重复添加 apply plugin。将 knownWebViewClasses 合并到现有 FTExt,保留其他配置;已有类列表时追加上述类名。若项目使用其他自定义 WebView 类,应填写实际使用的完整类名。

  3. 重新执行 Gradle 编译、打包并安装应用,使插桩配置生效。Cocos Creator 重新生成 Android 原生工程后,确认 Plugin 和 knownWebViewClasses 配置仍然保留。

自定义 WebView 识别

ft-plugin 已接入并不代表 Cocos 自定义 WebView 已被识别。使用 ft-plugin 1.3.9 和 org.cocos2dx.lib.Cocos2dxWebView 时,需要补充上述类识别配置。未收到数据时,可按 自定义 WebView 自动采集排查检查插件日志。

初始化 Web 页面

完成 App 侧配置后,在 WebView 加载的页面内集成并初始化 Web RUM SDK,详见 页面初始化。已有 Web SDK 初始化配置时复用现有配置,只保留一次初始化。

按 WebView 数据验证检查上报:在 App 中打开页面,触发访问、点击或网络请求,在对应的 Android/iOS App 应用中确认收到 WebView RUM 数据。

文档评价

文档内容是否对您有帮助?