Skip to main content

H5混合模块

APP 内嵌 H5 页面如果也需要进行数据采集,H5 页面需要集成 Web JS SDK

若需要 H5 页面 Web JS SDK 采集的数据与 APP 中 GIO SDK 采集的用户等数据打通,请参考:
WebJS:Hybrid内嵌页打通插件

如果 APP 集成的是无埋点 SDK, 不需要做设置,SDK 初始化后会自动注入桥接代码,实现数据打通;

如果 APP 集成的是埋点 SDK,则需要您添加 Hybrid 依赖

info

使用时注意模块版本需要与采集 SDK 版本保持一致


模块集成

  1. 在您的 Podfile 文件中添加
pod 'GrowingAnalytics/Hybrid'

打开终端,切换到项目目录,执行 pod installpod update

  1. 一般情况下,Hybrid 将自动注入进行数据采集,如需额外配置,可在目标文件中,导入 #import "GrowingHybridModule.h",并调用下列配置接口

模块配置

Hybrid 模块中提供了配置接口(SDK 版本需大于等于 3.6.0):

1.自动对所有 webView 注入 Hybrid SDK

配置接口参数类型默认值说明
autoBridgeEnabledBOOLYES是否对所有 webView 自动注入 Hybrid SDK
示例
[GrowingHybridModule sharedInstance].autoBridgeEnabled = NO;

2.单个 webView 启用 Hybrid 注入 (白名单模式)

enableBridgeForWebView
在 autoBridgeEnabled 为 NO 时,对单个 webView 启用 Hybrid 注入,请在主线程调用

参数参数类型说明
webViewWKWebView当前 webView 实例
示例
[[GrowingHybridModule sharedInstance] enableBridgeForWebView:webView];

3.单个 webView 关闭 Hybrid 注入 (黑名单模式)

disableBridgeForWebView
在 autoBridgeEnabled 为 YES 时,对单个 webView 关闭 Hybrid 注入,请在主线程调用

参数参数类型说明
webViewWKWebView当前 webView 实例
示例
[[GrowingHybridModule sharedInstance] disableBridgeForWebView:webView];

4.查看 webView 是否可注入

isBridgeForWebViewEnabled
判断当前配置下,webView 是否可注入

参数参数类型说明
webViewWKWebView当前 webView 实例
示例
BOOL enabled = [[GrowingHybridModule sharedInstance] isBridgeForWebViewEnabled:webView];

5.重置 Hybrid 注入

resetBridgeSettings
重置Hybrid注入配置,请在主线程调用

示例
[[GrowingHybridModule sharedInstance] resetBridgeSettings];

tip

1. H5页面 Web JS SDK 采集的数据与APP 中 GIO SDK采集的用户等数据打通规则:

  • 两者 accountId 一致时,H5与APP打通,此时H5页面上采集的数据仅由 APP 中 GIO SDK 发送
  • 两者 accountId 不一致时,H5页面上采集的数据同时由 Web JS SDK 和 APP 中 GIO SDK发送 满足打通设置时,H5 页面调用 setUserID,cleanUserID 会调用 APP 的 setLoginUserID,cleanUserID。

2. 打通成功效果 当触发了打通规则,实现打通设置后,h5内嵌页采集的数据经 APP 中 GIO SDK发送数据。以下字段变化如下:
deviceId: 使用原生App的deviceId
sessionId: 使用原生App的sessionId
gioId: 使用原生App的gioId
userId: 使用原生App的userId
userKey: 使用原生App的userKey
dataSourceId: 使用原生App的dataSourceId
platform: 使用原生App的platform
domain: 使用H5页面的域名

用户行为与采集数据描述:用户点击APP内嵌H5页面,由APP原生页面进入H5页面,H5页面集成的采集SDK会把采集的数据转发给APP集成的SDK,再进行上报;H5页面的行为数据中的以上用户信息字段会用APP SDK 采集的用户信息,实现H5页面用户与APP用户信息关联。