旧-帮助文档
回到 GrowingIO
  • GrowingIO 帮助文档
  • 快速提交工单
  • 快速上手-Web
  • 快速上手-移动端
  • 快速上手-小程序
  • 产品更新日志
  • 分析工具
    • 事件分析
    • 用户分群
    • 用户细查
    • 漏斗分析
    • 活动分析
    • 落地页分析
    • 分布分析
    • 智能路径
    • 留存分析
    • 留存魔法师
    • 活跃用户分析
    • 热图分析
      • Web 端热图
      • App 热图
    • 单图
    • 微信应用用户分析
    • 小程序-分享分析
  • 看板
    • 自定义首页
    • 概览看板
    • KPI看板(企业版)
    • 小程序预置看板
    • 微信内嵌页预置看板
    • 实时监控模板
    • 业务场景
  • GIO 小程序看数助手
  • 广告监测
    • 创建监测链接
      • 推广 App
      • 推广网页
      • 推广小程序(微信)
    • 数据报表
      • 应用级数据
      • 深度数据分析
      • 数据指标说明
    • 推广管理
      • 监测链接
      • 广告活动
      • 推广渠道
    • 渠道配置指南
      • 腾讯社交广告
      • 今日头条
      • 百度原生信息流
      • 微博超级粉丝通
      • 爱奇艺
      • Inmobi
      • 微信广告平台
      • 凤羽广告平台
      • bilibili(B 站)
    • 其他功能
      • 日志导出
      • 维度配置
      • 权限配置
      • 反作弊规则
      • 深度链接配置
    • 相关知识
      • UTM 参数使用指南
      • 创建小程序的推广码
      • 移动端转化归因
      • 默认的渠道来源跟踪
      • DeepLink 启用新域名
    • 广告监测FAQ
  • SDK 文档
    • SDK 简介与安全性说明
    • 各平台 SDK 支持明细
    • SDK 更新日志
    • Web JS SDK
      • Web JS SDK API
      • Web JS SDK 常见问题
    • Android SDK
      • Android 无埋点 SDK
      • Android 无埋点 SDK API
      • Android 半自动采集浏览事件
      • Android 埋点 SDK
      • Android SDK 常见问题
    • iOS SDK
      • iOS 无埋点SDK
      • iOS SDK API
      • iOS 半自动采集浏览事件
      • iOS SDK 1.X旧版本升级指导
      • iOS 埋点SDK
      • iOS SDK 常见问题
    • Hybrid SDK (App内嵌H5)
    • 小程序、小游戏以及内嵌页 SDK
      • SDK 更新日志 - 小程序 & 内嵌页 & 快应用
      • 微信小程序 SDK
        • mpvue+第三方插件 添加代码
      • 微信小游戏 SDK
      • H5 内嵌页 SDK
      • 支付宝小程序 SDK
      • 百度小程序 SDK
      • QQ 小程序 SDK
      • 字节跳动小程序 SDK
      • 快应用 SDK
    • React Native 无埋点 SDK
      • ReactNative 埋点 SDK
    • Flutter 埋点 SDK
    • Cordova 埋点 SDK
    • Weex 埋点 SDK
    • API Cloud埋点 SDK
    • AppCan 埋点 SDK
    • Java 埋点 SDK
    • PHP 埋点 SDK
    • GrowingIO Debugger
      • 验证打点事件
  • 数据模型
    • 用户模型
      • 访问用户
      • 登录用户
      • 用户属性
    • 事件模型
      • 什么是事件
      • 无埋点事件
        • 访问事件及属性
        • 页面事件及属性
        • 动作事件及属性
      • 埋点事件
        • 埋点事件及属性
    • 统计模型
      • 指标--事件的度量
      • 维度--事件的属性
      • 预定义的指标和维度
  • 数据定义
    • 用户变量
      • 登录用户变量
      • 访问用户变量
    • 页面级变量
      • 查询条件直接设置成页面级变量
    • 无埋点圈选
      • Web 圈选
      • App 端圈选 App
      • 电脑端圈选 App
      • 小程序数据定义
      • 微信内嵌页数据定义
      • 圈选指标管理
        • 合并简单指标
        • 复合指标
    • 埋点事件
      • 埋点事件级变量
      • 转化变量
    • 小程序事件和变量
  • 数据管理
    • 新版数据管理功能说明
    • 无埋点事件管理
    • 埋点事件管理
    • 变量管理
    • 合并事件管理
    • 计算指标
  • 系统配置
    • 组织管理
    • 项目管理
    • 用户管理
    • 权限管理
    • 爬虫规则
    • 账号管理
    • UTM 映射管理
    • IP及域名数据过滤
  • API
    • GrowingIO API 认证
    • 广告监测链接创建服务 API
    • 微信小程序二维码创建服务 API
    • 原始数据导出 API
      • 原始数据导出字段说明
        • 无埋点事件
        • 埋点事件与变量
        • 广告相关数据
        • 通用字段说明
      • 原始数据导出 2.0 API
      • 原始数据导出 1.0 API(已废弃)
      • 原始数据导出 API 的升级迁移
      • 原始数据导出格式及处理建议
    • 统计数据导出 API
    • 埋点数据上传API
    • 用户变量上传 API
    • 项目管理 API
    • 数据管理 API (GDPR)
    • API 更新日志
  • 常见问题
    • 基本问题
    • SDK 集成
    • 圈选常见问题
    • 指标和维度
    • 数据安全
    • 产品使用
    • 数据统计差异
    • 无效指标清理说明
  • 内容贡献者
  • 帮助文档问题反馈
Powered by GitBook
On this page
  • Gradle 编译时配置 API
  • 初始化配置项 API
  • 基础配置 API
  • SDK 功能API
  • 数据采集发送 API
  • GrowingIO 运行时 API
  • 基础配置 API
  • 数据采集 API
  • 自定义事件和变量API
  1. SDK 文档
  2. Android SDK

Android 无埋点 SDK API

GrowingIO 提供了初始化配置项 API 和运行时 API 来自定义 SDK 的采集,满足不同场景的定制采集。同一种含义的API,只需要调用一次即可,比如您关闭SDK的采集功能,可以在初始化中配置,也可以在运行时配置,只需调用一次相关API即可。

Gradle 编译时配置 API

使您的应用在编译时即可自定义。

Android 2.7.8 SDK 为海外上架应用涉及采集用户 androidId, imei, googleAdId 隐私数据的开关支持。

增加分别可以在编译时、SDK 初始化、 APP 运行时调用的对应接口。

注意,imeiEnable、androidEnable、googleAdIdEnable 配置项不支持 com.android.tools.build:gradle 3.0.x 以下版本。

编译时配置项API

默认值

说明

版本

imeiEnable

true

为了海外应用市场上架应用,设置为 false 则 SDK 不采集 IMEI 。在编译期配置将删除该部分的采集代码,后续配置(初始化或者运行时)将失效。

2.7.8及以上

androidIdEnable

true

为了海外应用市场上架应用,设置为 false 则 SDK 不采集 androidId 。在编译期配置将删除该部分的采集代码,后续配置(初始化或者运行时)将失效。

2.7.8及以上

googleAdIdEnable

true

为了海外应用市场上架应用,设置为 false 则 SDK 不采集 GoogleAdId ,在编译期配置将删除该部分的采集代码,后续配置(初始化或者运行时)将失效。

2.7.8及以上

oaidEnable

true

设置为 false 则运行时和初始化的配置则无效。

2.8.5及以上

示例代码

android { · · · }
// 须位于 android 代码块下
growingio {
    defaultConfig { 
        imeiEnable true 
        androidIdEnable true 
        googleAdIdEnable true 
    }
    buildTypes {
        googlePlay { 
            imeiEnable false
            androidIdEnable false 
            googleAdIdEnable true 
        }
    }
}

初始化配置项 API

初始化配置项均在Application的onCreate方法中 SDK 初始化代码块中设置,下面将分类并描述含义。

示例代码

import android.app.Application;

import com.growingio.android.sdk.collection.Configuration;
import com.growingio.android.sdk.collection.GrowingIO;
import com.growingio.android.sdk.deeplink.DeeplinkCallback;

import java.util.Map;

public class TestApplication extends Application {
    @Override
    public void onCreate() {
        super.onCreate();
        GrowingIO.startWithConfiguration(this, new Configuration()
                .disableCellularImp()
                .disableImageViewCollection(false)
                .setBulkSize(100)
                .setCellularDataLimit(1000)
                .setChannel("渠道名")
                .setDebugMode(true)
                .setDeeplinkCallback(new DeeplinkCallback() {
                    @Override
                    public void onReceive(Map<String, String> params, int error, long appAwakePassedTime) {
                    }
                }).setDiagnose(false)
                .setDisabled(false)
                .setDisableImpression(false)
                .setFlushInterval(1000)
                .setMutiprocess(true)
                .setSampling(0.34)
                .setSessionInterval(23000)
                .setTestMode(true)
                .setThrottle(false)
                .setTrackWebView(true)
                .supportMultiProcessCircle(true)
                .trackAllFragments()
                .setImeiEnable(true)
                .setGoogleAdIdEnable(true)
                .setAndroidIdEnable(true)
                .setOAIDEnable(true));

    }
}

基础配置 API

初始化配置项API

默认值

说明

最低版本

setDebugMode

false

在Logcat中输出采集日志

setTestMode

false

实时发送数据,开启则不遵循移动网络状态下数据发送大小默认 3M 限制以及采集数据缓存30秒发送策略。

为了方便开发者查看日志,一般和setDebugMode一起使用。

setChannel

无

设置渠道

useID

true

是否在计算xpath时使用控件id,默认使用

2.6.0中删除

SDK 功能API

初始化配置项API

默认值

说明

版本

setDeeplinkCallback

无

DeepLink 回调接口,获得自定义参数以便跳转对应 APP页 面

2.3.2 以上

setTrackWebView

true

是否采集全部的WebView,设置为false时不采所有WebView数据

supportMultiProcessCircle

false

是否使用多进程圈选功能

setMutiprocess

false

使用了多进程必须配置,自定义事件和变量值才会多进程共享

trackAllFragments

false

是否采集所有Fragment

setHashTagEnable

false

在WebView中的页面访问,是否认为点击锚点链接是一个页面浏览

数据采集发送 API

初始化配置项API

默认值

说明

setDisabled

false

SDK 是否采集数据,设置为true时不采集数据

setSampling

1

采样率[0.01~1],若设置sampling = 0.01,则 1% 的设备会被采集数据,每次启动会根据用户设置的采样率判断设备是否在采集的范围之内,使用之前请咨询技术支持

setSessionInterval

30 * 1000

在后台停留时长超过此值,则产生新的sessionId,发送visit事件。

setFlushInterval

30 * 1000

数据刷新的最长时间间隔,默认30 秒 。如果距离上次发送数据事件超过此时间则发送事件

setThrottle

false

是否节流发送,节流发送时imp不发送,不发送但是采集,imp为元素展示事件

setDisableImpression

false

是否采集imp事件,imp为元素展示事件,默认采集imp

disableCellularImp

false

否关闭移动蜂窝网imp事件采集,imp为元素展示事件

setCellularDataLimit

3 * 1024 * 1024

一天的时间之内,在移动蜂窝网下的数据最大传输量,默认3M。

setBulkSize

300

如果数据库存储数据条数大于等于bulkSize,则马上发送数据。

setImeiEnable

true

为了海外应用市场上架应用,Android 2.7.8 新增初始化配置接口,设置为 false 则 SDK 不采集 imei

setAndroidIdEnable

true

为了海外应用市场上架应用,Android 2.7.8 新增初始化配置接口,设置为 false 则 SDK 不采集 androidid 。

setGoogleAdIdEnable

true

为了海外应用市场上架应用,Android 2.7.8 新增初始化配置接口,设置为 false 则 SDK 不采集 GoogleAdId 。

setOAIDEnable

true

GrowingIO 运行时 API

GrowingIO 为 APP 提供运行时随意调用的 API,使用方法如下:

// 得到 GrowingIO 实例后可以调用其中 API
GrowingIO gio = GrowingIO.getInstance();
gio.setUserId("张溪梦");

GrowingIO 所有 API 都需要在主线程调用。

基础配置 API

运行时API

说明

setGeoLocation

设置经纬度,并在 vst 事件中发送,Android SDK 暂时没办法自动获取GPS数据,如果您要采集GPS数据,需要在您的App每次获取完GPS数据之后,通过该API告知 SDK。如果您不设置,我们默认使用用户IP的Location。

clearGeoLocation

清空经纬度

setViewInfo

配置 view 的 Tag,标记 View ,并在 GrowingIO 相关事件中发送 ,内容对应 xPath 中的 obj

例如:在商品ListView添加购物车的场景中,每个商品item都含有一个加入购物车按钮,这时无法区分商品item与将它加入购物车按钮的一对一关系,此时调用此方法增加描述。

注意:适用于原有v字段含义不大,只关注描述的场景,使用此接口后v字段将不采集

setViewContent

配置 view 的 Tag,标记 View ,并在 GrowingIO相关事件中发送,内容对应 xPath 中的 v

SDK默认不会采集ImageView的内容,为了能对不同的图片元素(ImageView)区分统计,需要对每个具有分析意义的图片元素(ImageView)添加描述。

setViewID

设置 View id ,配置之后对应 xPath 中的 view id,SDK将会使用Layout文件中的ID来识别一个元素。

如果部分元素在Layout文件中没有ID,建议在Layout文件中添加。

对于动态生成的元素,可以使用如下方法对它设置唯一的ID。

当您的应用界面改版时,可能会导致无法准确地统计已经圈选的元素。因此,对于应用中的主要流程涉及到的界面元素,建议您为它们设置固定的唯一ID,以保证数据的一致性。

  • ID 只能设置为字母、数字和下划线的组合

  • 如果在ViewGroup上设置ID的话,SDK会忽略他所有子元素的默认ID(就是写在xml文件里的)只会使用GrowingIO.setViewID设置的ID。

  • 对于已经集成过旧版SDK并圈选过的应用,对某个元素设置ID后再圈选它,指标数值会从零开始计算,类似初次集成SDK后发版的效果,但不影响之前圈选的其它指标数据。如果不希望出现这种情况,请不要使用这个方法

setChannel

2.6.5 之前版本: 先设置渠道信息,再发送数据 能够保证所有数据都一定会带上渠道信息 2.6.5 及之后版本: 保留原有设置渠道信息的方法,新增在运行时设置渠道信息 新增的接口无法保证所有数据都一定会带上渠道信息(虽然我们会通过重发机制进行保证,但是无法做到100%)

数据采集 API

运行时API

说明

版本

disableDataCollect

遵守欧洲联盟出台的通用数据保护条例,用户不授权,不采集用户数据

2.3.2 以上

enableDataCollect

遵守欧洲联盟出台的通用数据保护条例,用户授权,采集用户数据

2.3.2 以上

disable

GrowingIO 停止采集

resume

GrowingIO 恢复采集

stop

GrowingIO 停止采集,可以不在主线程调用

setThrottle

是否节流发送(节流发送时imp不发送),内部实际调用 Configuration 中的同名方法,所以在初始化时候配置和运行时动态配置,效果一样。

setImp

imp事件开关,true 为打开

disableImpression

不发送 imp

ignoredView

忽略配置的 View ,不采集用户数据。

如果您需要忽略某些特殊内容,比如倒计时元素或涉及隐私的内容,可以使用此接口。

ignoreFragment

不采集配置的 Fragment 页面浏览事件(page),不将Fragment视作一个页面,可以理解成当作为一个可点击的view。自动采集用户行为事件(clck、chng)和元素展示事件(imp)。

ignoreFragmentX

支持 AndroidX , 功能同 ignoreFragment。

2.6.6 以上

ignoreViewImp

忽略配置的 View ,不采集用户元素浏览数据。

如果您需要忽略某些大量的 数据,比如弹幕,可以使用此接口。

2.6.7 以上

setPageName

设置页面别名,有些时候,对于完成某个功能的页面,统计时可能需要进一步细分。 比如,对于展示商品列表的页面,需要区分衣物类商品,以及食品类商品的两种列表的访问量。

注意

  1. 必须在该Activity的onCreate方法中完成该属性的赋值操作。

  2. 页面别名只能设置为字母、数字和下划线的组合。

  3. 为查看数据方便,请尽量对iOS和安卓的同功能页面取不同的名称。

setPageNameX

支持 AndroidX , 功能同 setPageName。

2.6.6 以上

getSessionId

得到 session id

getDeviceId

获取设备id,对应数据采集的u字段,又称为匿名用户id,用来定义一台设备,SDK 自动生成。

当这个输入框失去焦点(包括应用退到后台),且输入框内容跟获取焦点前相比发生变化时,输入框内文字会被发送回GrowingIO。

注意:对于密码输入框,即便标记为需要采集,SDK也会忽略,不采集它的数据。

trackFragment

如果APP初始化时候,没有设置 trackAllFragment 即不采集全部 Fragment,可以选择性采集指定 Fragment,设置之后 sdk 将监听 Fragment 的各个生命周期, 采集相关用户行为数据。

请在 new Fragment 的时候调用此方法。

trackFragmentX

支持 AndroidX , 功能同 trackFragment。

请在 new Fragment 的时候调用此方法。

2.6.6 以上

trackWebView

采集 WebView 事件,默认采集,您可以在不全量采集WebView的时候,定制采集某个WebView

2.6.0 中删除

trackX5WebView

采集 X5WebView 事件,默认采集

2.6.0 中删除

setTabName

如果您有某些View动态添加到ViewTree中并且在父容器中的位置不固定(例如常见的多Fragment实现的Tab切换),请给每个View设置ID来辅助统计

setImeiEnable

为了海外应用市场上架应用,Android 2.7.8 新增运行时配置接口,设置为 false 则 SDK 不采集 imei 。

2.7.8及以上

setAndroidIdEnable

为了海外应用市场上架应用,Android 2.7.8 新增运行时配置接口,设置为 false 则 SDK 不采集 androidId 。

2.7.8及以上

setGoogleAdIdEnable

为了海外应用市场上架应用,Android 2.7.8 新增运行时配置接口,设置为 false 则 SDK 不采集 GoogleAdId 。

2.7.8及以上

setOAIDEnable

2.8.5及以上

自定义事件和变量API

在 Android SDK 文档中描述的更详细,请点击查看。

自定义事件和变量API

说明

最低版本

track

发送自定义事件,对应cstm事件

2.0.0

setPageVariable

发送页面级变量,对应pvar事件

2.0.0

setPageVariableX

支持 AndroidX , 功能同 setPageVariable

2.6.6 以上

setEvar

发送转化变量,对应evar事件

2.0.0

setPeopleVariable

发送用户变量,对应ppl事件

2.0.0

setUserId

设置登录用户ID,对应cs1字段

2.0.0

clearUserId

清除登录用户ID

2.0.0

setVisitor

设置访问用户变量,对应vstr事件

2.4.0

PreviousAndroid 无埋点 SDKNextAndroid 半自动采集浏览事件

Last updated 5 years ago

国内 联合各大手机制造商推出了 OAID , 作为唯一广告标识符。

国内 联合各大手机制造商推出了 OAID , 作为唯一广告标识符。Android 2.8.5 新增。

​

​

国内 联合各大手机制造商推出了 OAID , 作为唯一广告标识符。Android 2.8.5 新增。

移动安全联盟MSA
移动安全联盟MSA
移动安全联盟MSA
trackBanner
设置所有广告图对应的广告内容描述,内容描述需要跟广告的顺序相同。
trackEditText
SDK 默认不采集用户输入框的内容,设置以后,采集除了密码以外的输入框文本内容。​