跳转至

WebView 监测

WebView 数据监测

WebView 数据监测,需要在 WebView 访问页面集成 Web 监测 SDK

如需同时支持桌面浏览器中的 Web 应用采集,建议按桌面应用推荐配置进行接入。

当采集场景仅限于 App 内 WebView,且无需支持桌面浏览器中的 Web 应用时,在完成 Web SDK 基础接入配置后,可使用任意 applicationId 进行初始化。

正常初始化后,App 内 WebView 的采集数据默认由 App 侧统一接管。

如需关闭 WebView 采集或按 host 过滤采集范围,可参考以下配置说明:

  • FTRUMConfig.setEnableTraceWebView
  • FTSDKConfig.setAllowWebViewHost

FTRUMConfig.setAllowWebViewHost 已废弃,升级后请使用 FTSDKConfig.setAllowWebViewHost 统一控制 WebView RUM 与 Log 的 host 范围。

WebView 日志采集

ft-sdk >= 1.7.5 支持通过 FTWebViewJavascriptBridge 接收 WebView 中 Browser SDK 产生的日志,并交由 Android SDK 执行日志等级过滤、采样、缓存和上传。

开启该能力前,WebView 页面需要集成 Web 监测 SDK,并初始化 Android Log:

FTSdk.initLogWithConfig(new FTLoggerConfig()
    .setEnableWebViewLog(true)
    .setEnableLinkRumData(true));
FTSdk.initLogWithConfig(
    FTLoggerConfig()
        .setEnableWebViewLog(true)
        .setEnableLinkRumData(true)
)
  • setEnableWebViewLog(true) 仅开启 Browser SDK Log 采集,不依赖原生日志的 setEnableCustomLogsetEnableConsoleLog
  • setEnableLinkRumData(true) 开启后,WebView Log 会关联 Android RUM 的 Application、Session 等上下文;关闭后会移除 RUM 关联字段。
  • FTSDKConfig.setAllowWebViewHost 用于统一限制 WebView RUM 与 Log 的 host 范围。null 表示允许全部 host,空数组表示不自动使用 Bridge,配置的 host 同时匹配其子域名。该配置用于 Bridge 选择,不应作为页面来源安全校验机制。
  • WebView Log 同样受 FTLoggerConfig.setSamplingRatesetLogLevelFilters 和日志缓存策略控制,并支持远程配置动态开启或关闭。

常见排查入口

  • 自定义 WebView 自动采集未生效,请参考 故障排查
  • 需要手动识别自定义 WebView 时,请参考 应用接入 中的 knownWebViewClasses 配置说明。

文档评价

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