在初始化过程中,SDK会接收一个由用户传入的默认配置Configuration
,配置相关说明如下表:
Config | 参数类型 | 是否必填 | 默认值 | 说明 | 其它 |
|
| 是 |
| 项目ID,每个应用对应唯一值 | - |
|
| 是 |
| 应用的URLScheme,唯一值 | - |
|
| 是 |
| 应用的DataSourceId,唯一值 | - |
|
| 是 |
| 服务端部署后的 ServerHost | - |
|
| 否 |
| 应用的分发渠道 | - |
|
| 否 |
| 调试模式,会打印SDK log,抛出错误异常,在线上环境请关闭 | - |
|
| 否 |
| 设置每天使用数据网络(3G\4G\5G)上传的数据量的上限(单位是 MB | - |
|
| 否 |
| 数据发送的间隔,单位秒 | - |
|
| 否 |
| 会话后台留存时长,单位秒 | - |
|
| 否 |
| 是否采集数据 | - |
|
| 否 |
| 设置事件过滤 | - |
|
| 否 |
| 设置事件属性过滤 | - |
|
| 否 |
| 元素曝光事件中的比例因子,范围 [0-1] | 无埋点独有 |
projectId urlScheme setDataSourceId setDataCollectionServerHost 这四个参数为 CDP 用户必须要设置的参数,若不清楚具体数值请询问相关服务端对接的开发同事。
channel 对应应用的分发渠道字段,若设置了值则会在每个事件上报中含有渠道信息。
比如在初始化中设置了.setChannel("Docs")
,则会在上报信息中出现 appChannel
字段:
╔═══════════════════════════════════════════════════════════════════════════════════════║ {║ "platform": "Android",║ "appChannel": "Docs",║ "screenHeight": 1920,║ "screenWidth": 1080,║ ...║ }╚═══════════════════════════════════════════════════════════════════════════════════════
setDebugEnabled 默认不开启,开启后会输出如上所示的 SDK Log 日志。
建议做法设为 setDebugEnabled(BuildConfig.DEBUG)
这样既能保证Debug时能够打印日志,正式发布时也能关闭日志;
setCellularDataLimit 为每日在移动网环境下的流量限制,默认为10M。WIFI环境下则不计流量。
setDataUploadInterval 上报间隔 GrowingIO SDK 会先将事件存入数据库中,然后以每隔默认时间15秒的情况下向服务器发送事件包(最大50条事件)。
setSessionInterval 设置会话后台留存时长 指当前会话在应用进入后台后的最大留存时间,默认为30秒。另外,其他情况下也会重新生成一个新的会话,如设置用户ID等核心信息,重新打开数据收集等。
setDataCollectionEnabled 数据收集 当数据收集关闭时,SDK将不会再获取设备信息,也不会产生事件和上报事件。
setOaidEnabled 是否采集 oaid
作为设备信息
若 setOaidEnabled(true)
且已经集成了国内移动安全联盟MSA下的jar包,则会在 Visit
事件中添加 oaid
字段:
╔═══════════════════════════════════════════════════════════════════════════════════════║ {║ "eventType": "VISIT",║ "oaid": "xxxxxxx-xxxxx-xxxxxx",║ "deviceId": "c2369951-098c-34ec-831c-858fe348df1d",║ ...║ }╚═══════════════════════════════════════════════════════════════════════════════════════
在 Android 10 版本中,非系统应用无法获取 IMEI。加上以前 Android 版本已经对 MAC 地址, AndroidID 的获取做了限制, 在 Android10 中缺少一种唯一标记设备的标识符。 在海外, Google 推荐使用 Google 的广告 ID 作为广告的唯一识别符,在国内移动安全联盟MSA 联合各大手机制造商推出了 OAID 的概念, 作为唯一广告标识符。 目前腾讯, 头条, 网易广告SDK已经要求使用 OAID, OAID 的准确性和覆盖率均满足广告场景的使用需求,Android SDK 提供采集 OAID 的能力。
setExcludeEvent 事件过滤
默认情况下,事件不会进行过滤。但若不想采集某些事件可以在此设置。事件类型可以参考 FilterEventParams 若想取消过滤,可以调用 ConfigurationProvider.core().setExcludeEvent(EventExcludeFilter.EVENT_MASK_NONE)
setIgnoreField 事件属性过滤
事件属性指上报事件中携带的属性参数。可过滤事件属性可以参考 FieldIgnoreFilter若想取消过滤,可以调用 ConfigurationProvider.core().setIgnoreField(FieldIgnoreFilter.FIELD_IGNORE_NONE)
setImpressionScale 曝光比例 与曝光事件结合使用。曝光比例是指当一个曝光的View出现在屏幕时可见的部分占据自身尺寸的比例,比如说若设为0则表示只要出现即产生曝光事件,若设为1则表示要整个View都出现在屏幕中。