Android SDK

事件设计表

事件设计表一般是由数据分析工作台分析师和你们对接的同事,针对具体业务需求一起梳理的需要做埋点的 Excel 表,数据分析工作台分析分析系统宏观上有两张表,事件表(events)用于记录用户的行为事件,比如 App 启动,App 浏览页面;用户表(users)用于保存用户相关的一些信息,比如个人资料。

事件和用户属性设计(示例)
事件表(events) 用户表(users)
事件名(带 $ 符号的为预置事件,开启全埋点自动采集) 事件属性 用户属性
App 启动事件( $AppStart ) 预置事件属性 邮箱( email )
App 退出事件( $AppEnd ) 预置事件属性
App 浏览页面事件( $AppViewScreen ) 预置事件属性
App 元素点击事件( $AppClick ) 预置事件属性
搜索事件( search ) 搜索关键词( searchKeyWord )

集成 SDK

在AndroidStudio中导入SDK包

第一步:在project目录下的libs中,将提供的arr包拷贝进去.

第二步:在app目录下的build.gradle添加以下代码:

dependencies下增加或修改:
 //将
implementation fileTree(dir: 'libs', include: ['*.jar'])
//改为
implementation fileTree(dir: 'libs', include: ['*.jar','*.aar'])

第三步:在AndroidManifest.xml中加入权限

 <!-- 同步数据需要网络权限 -->
 <uses-permission android:name="android.permission.INTERNET" />
 <!-- 获取网络状态 -->
 <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
 <!-- 获取运营商信息 -->
 <uses-permission android:name="android.permission.READ_PHONE_STATE" />
 <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
权限 用途
INTERNET 允许应用发送统计数据
ACCESS_NETWORK_STATE 允许应用检测网络状态
READ_PHONE_STATE 允许应用获取设备 IMEI
ACCESS_WIFI_STATE 允许应用获取 MAC 地址

初始化SDK

在Application的onCreate()方法中初始化SDK

//请联系卓尔数科
String ZALL_SERVER_URL = "数据接收地址"; 

// 初始化配置
SAConfigOptions saConfigOptions = new SAConfigOptions(SA_SERVER_URL);
// 开启全埋点
saConfigOptions.setAutoTrackEventType(SensorsAnalyticsAutoTrackEventType.APP_CLICK |
                SensorsAnalyticsAutoTrackEventType.APP_START |     
                SensorsAnalyticsAutoTrackEventType.APP_END |       
                SensorsAnalyticsAutoTrackEventType.APP_VIEW_SCREEN)
                //开启 Log
                .enableLog(true);
/**
 * 其他配置,如开启可视化全埋点
 */
// 需要在主线程初始化卓尔 SDK
SensorsDataAPI.startWithConfigOptions(this, saConfigOptions);

SDK基本配置

开启全埋点

SDK 可以自动采集一些用户行为,如 App 启动、退出、浏览页面、控件点击。初始化 SDK 时,通过 setAutoTrackEventType() 方法可以配置需要开启的全埋点类型:

// 可根据需求,自由组合
saConfigOptions.setAutoTrackEventType(SensorsAnalyticsAutoTrackEventType.APP_CLICK|
        SensorsAnalyticsAutoTrackEventType.APP_START|
        SensorsAnalyticsAutoTrackEventType.APP_END|
        SensorsAnalyticsAutoTrackEventType.APP_VIEW_SCREEN);

App 启动、App 退出的全埋点事件采集要求系统最低版本为 API 14 (Android 4.0)。

埋点示例

用户登录

当用户注册成功或登录成功时,需要调用 SDK 的 login() 方法:

SensorsDataAPI.sharedInstance().login("登录 ID");

为了准确记录登录用户的行为信息,建议在以下时机各调用一次 login() 方法:

· 用户在注册成功时
· 用户登录成功时
· 已登录用户每次启动 App 时

追踪事件

可以通过 track() 方法追踪用户行为事件,并为事件添加自定义属性(触发的事件会存储到分析系统的 events 表中)。

     try {
         JSONObject properties = new JSONObject();
         properties.put("searchKeyWord", "数据分析工作台");// 搜索关键字
         // 记录搜索(search )事件
         SensorsDataAPI.sharedInstance().track("search", properties);
     } catch (JSONException e) {
         e.printStackTrace();
     }

设置用户属性

为了更准确地提供针对人群的分析服务,可以使用数据分析工作台 SDK 的 profileSet() 等方法设置用户属性,如年龄、性别等。用户可以在留存分析、分布分析等功能中,使用用户属性作为过滤条件,精确分析特定人群的指标。 (设置的用户属性会存储到数据分析工作台系统的 users 表中)

try {
    JSONObject properties = new JSONObject();
    // 设定用户性别属性 "Sex" 为 "Male"
    properties.put("Sex", "Male");
    // 设定用户年龄属性 "Age" 为 18
    properties.put("Age", 18);

    // 设定用户属性
    SensorsDataAPI.sharedInstance().profileSet(properties);
} catch (JSONException e) {
    e.printStackTrace();
}

设置事件公共属性

对于所有事件都需要添加的属性,初始化 SDK 后,可以通过 registerSuperProperties() 将属性注册为公共属性。设置方法如下:

// 将应用名称作为事件公共属性,后续所有 track() 追踪的事件都会自动带上 "AppName" 属性
try {
    JSONObject properties = new JSONObject();
    properties.put("AppName", getAppName(this));
    SensorsDataAPI.sharedInstance().registerSuperProperties(properties);
} catch (JSONException e) {
    e.printStackTrace();
}

公共属性会保存在 App 本地缓存中。可以通过 unregisterSuperProperty() 删除一个公共属性,或使用 clearSuperProperties() 删除所有已设置的事件公共属性。

results matching ""

    No results matching ""