运行时API
运行时 API 可对 SDK 进行采集上报数据的控制。
GrowingIO SDK 为App提供了运行时调用的API,使用方法如下:
Java
Kotlin
// 得到 GrowingIO 实例后可以调用其中 API
GrowingIO gio = GrowingIO.getInstance();
gio.setUserId("登录用户ID");
val gio = GrowingIO.getInstance()
gio.userId = "登录用户ID"
GrowingIO SDK 所有 API 都需要在主线程调用。
API | 说明 | 无埋点SDK版本支持 | 埋点SDK版本支持 |
setGeoLocation | 设置经纬度,并在 vst 事件中发送,Android SDK 默认不获取 GPS 数据,如果您要采集GPS 数据,需要在您的App每次获取完GPS 数据之后,调用过该API 。经纬度设置为(0,0),视为无效设置 | ALL | ALL |
clearGeoLocation | 清空经纬度 | ALL | ALL |
setViewInfo | 配置 view 的 Tag,标记 View ,并在 SDK 相关事件中发送 ,内容对应 xPath 中的 obj 例如:在商品 ListView 添加购物车的场景中,每个商品item 都含有一个加入购物车按钮,这时无法区分商品item 与将它加入购物车按钮的一对一关系,此时调用此方法增加描述。注意:适用于原有 v 字段含义不大,只关注描述的场景,使用此接口后v 字段将不采集 | ALL | - |
setViewContent | 配置 view 的 Tag,标记 View ,并在 GrowingIO相关事件中发送,内容对应 xPath 中的 v SDK默认不会采集ImageView的内容,为了能对不同的图片元素(ImageView)区分统计,需要对每个具有分析意义的图片元素(ImageView)添加描述。 | ALL | - |
setViewID | 设置 View id ,配置之后对应 xPath 中的 view id,SDK将会使用Layout文件中的ID来识别一个元素。 如果部分元素在Layout文件中没有ID,建议在Layout文件中添加。 对于动态生成的元素,可以使用如下方法对它设置唯一的ID。 当您的应用界面改版时,可能会导致无法准确地统计已经圈选的元素。因此,对于应用中的主要流程涉及到的界面元素,建议您为它们设置固定的唯一ID,以保证数据的一致性。
| ALL | - |
setChannel |
| ALL | ALL |
API | 说明 | 无埋点SDK版本支持 | 埋点SDK版本支持 |
isDeeplinkUrl | 校验链接URI是否满足GIO的格式,如"gio.ren"或".datayi.cn"结尾等 | >=2.8.11 | >=2.8.11 |
doDeeplinkByUrl | true 表示是GIO的deeplink链接,进行下一步判断, false 表示非GIO相关链接.参数callback不填则默认使用全局初始化时设置的callback | >=2.8.11 | >=2.8.11 |
disableDataCollect | 遵守欧洲联盟出台的通用数据保护条例,用户不授权,不采集用户数据 | >=2.3.2 | ALL |
enableDataCollect | 遵守欧洲联盟出台的通用数据保护条例,用户授权,采集用户数据 | >=2.3.2 | ALL |
disable | GrowingIO停止采集 | ALL | ALL |
resume | GrowingIO恢复采集 | ALL | ALL |
stop | GrowingIO停止采集,可以不在主线程调用 | ALL | ALL |
setThrottle | 是否节流发送(节流发送时imp不发送),内部实际调用 Configuration 中的同名方法,所以在初始化时候配置和运行时动态配置,效果一样。 | ALL | - |
setImp | imp 事件开关,true 为打开 | ALL | - |
disableImpression | 不发送 imp | ALL | - |
ignoredView | 忽略配置的 View ,不采集用户数据。 如果您需要忽略某些特殊内容,比如倒计时元素或涉及隐私的内容,可以使用此接口。 | ALL | - |
ignoreFragment | 不采集配置的 Fragment 页面浏览事件( page ),不将Fragment 视作一个页面,可以理解成当作为一个可点击的view。自动采集用户行为事件(clck、chng )和元素展示事件(imp )。 | ALL | - |
ignoreFragmentX | 支持 AndroidX , 功能同 ignoreFragment。 | >=2.6.6 | - |
ignoreViewImp | 忽略配置的 View ,不采集用户元素浏览数据。 如果您需要忽略某些大量的 数据,比如弹幕,可以使用此接口。 | >=2.6.7 | - |
setPageName | 设置页面别名,有些时候,对于完成某个功能的页面,统计时可能需要进一步细分。 比如,对于展示商品列表的页面,需要区分衣物类商品,以及食品类商品的两种列表的访问量。 注意
| ALL | - |
setPageNameX | 支持 AndroidX , 功能同 setPageName。 | >=2.6.6 | - |
getSessionId | 得到 session id | ALL | ALL |
getDeviceId | 获取设备id,对应数据采集的 u 字段,又称为匿名用户id ,用来定义一台设备,SDK 自动生成。 | ALL | ALL |
trackBanner | 设置所有广告图对应的广告内容描述,内容描述需要跟广告的顺序相同。 | ALL | - |
trackEditText | SDK 默认不采集用户输入框的内容,设置以后,采集除了密码以外的输入框文本内容。 当这个输入框失去焦点(包括应用退到后台),且输入框内容跟获取焦点前相比发生变化时,输入框内文字会被发送回GrowingIO。 注意:对于密码输入框,即便标记为需要采集,SDK也会忽略,不采集它的数据。 | ALL | - |
trackFragment | 如果APP初始化时候,没有设置 trackAllFragment 即不采集全部 Fragment ,可以选择性采集指定 Fragment ,设置之后 sdk 将监听 Fragment 的各个生命周期, 采集相关用户行为数据。请在 new Fragment 的时候调用此方法。 | ALL | - |
trackFragmentX | 支持 AndroidX , 功能同 trackFragment。 请在 new Fragment 的时候调用此方法。 | >=2.6.6 | - |
trackWebView | 采集 WebView 事件,默认采集,您可以在不全量采集WebView 的时候,定制采集某个WebView | >=2.8.22 | - |
trackX5WebView | 采集 X5WebView 事件,默认采集 | <2.6.0 | - |
setTabName | 如果您有某些View动态添加到ViewTree中并且在父容器中的位置不固定(例如常见的多Fragment实现的Tab切换),请给每个View设置ID来辅助统计 | ALL | - |
setImeiEnable | 设置为 false 则 SDK 不采集 imei, 适用于海外应用市场上架的应用。 | >=2.7.8 | >=2.7.8 |
setAndroidIdEnable | 设置为 false 则 SDK 不采集 androidId ,适用于海外应用市场上架的应用。 | >=2.7.8 | >=2.7.8 |
setGoogleAdIdEnable | 设置为 false 则 SDK 不采集 GoogleAdId ,适用于海外应用市场上架的应用。 | >=2.7.8 | >=2.7.8 |
setOAIDEnable | >=2.8.5 | >=2.8.5 | |
bridgeForWebView | 提供原生的 WebView bridge供hybrid调用, 支持hybrid事件发送 | - | >=2.9.0 |
bridgeForX5WebView | 提供腾讯X5内核的WebView bridge供hybrid调用, 支持hybrid事件发送 | - | >=2.9.0 |
bridgeForUcWebView | 提供UC内核的WebView bridge供hybrid调用, 支持hybrid事件发送 | >=2.9.13 | >=2.9.13 |
最近更新 11mo ago