帮助与文档

> >

本文档系AnalySDK云端版文档。请参考一下文档集成AnalySDK。

 一、获取AppKey,AppSecret

  1. 打开Mob官网,在官网选择登录或注册,新用户先注册,老用户直接登录。

注册页面如下图:

  1. 注册或登录完成后,会返回首页,点击右上⻆的“进⼊后台”,会跳转⾄管理后台,点击左侧,选择“添加应⽤”。如下图:

填入应用名称:

完成创建即可得到appkey和appsecret

选择’添加产品’,找到移动AnalySDK,点击马上开始,至此你的appkey将开始对AnalySDK生效

 

二、下载客户端SDK

请从官网http://www.mob.com/downloadDetail/AnalySDK/android下载客户端SDK,解压后可得到如下文件夹目录:

如上图所示,打开AnalySDK文件夹即可得到以下三个库文件,说明如下:

AnalySDK.jar  –  AnalySDK 的核心库

MobCommons.jar  –  AnalySDK 依赖的公共库

MobTools.jar  –  AnalySDK 依赖的工具库

三、快速集成Android客户端SDK

1、添加SDK

将AnalySDK.jar,MobCommons.jar,MobTools.jar添加到项目libs文件夹中,如下图所示:

 

2、配置AndroidManifest.xml文件

1)添加权限

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />

 

2)将Application修改为MobApplication,添加Mob-AppKey 、Mob-AppSecret 和 渠道参数AnalySDK-Channel免去SDK初始化操作

<application 
    android:icon="@drawable/ic_launcher"
    android:theme="@style/AppTheme"
    android:name="com.mob.MobApplication">

<meta-data android:name="Mob-AppKey" android:value="w17osylEYXhVe"/>
<meta-data android:name="Mob-AppSecret" android:value="qh9deya3ixumyizmhj30fwwytarkdsen"/>
<!--渠道参数-->
<meta-data android:name="AnalySDK-Channel" android:value="Mob"/>

 

3、代码调用

1)初始化MobSDK

如果您没有在`AndroidManifest`中设置`appliaction`的类名,MobSDK会将这个设置为`com.mob.MobApplication`,但如果您设置了,请在您自己的Application类中调用:

MobSDK.init(this);

以初始化MobSDK。

2)代码调用

通过AnalySDK,您可以执行以下3种统计操作:

2-1、事件埋点

每个事件应有独立的事件名称,并且传入自定义的键值对参数用于统计数据,建议埋点的代码应部署于一些业务场景发生的地方,例如点击、回调、购买充值等场景。
有以下接口可调用:

// 统计事件名称和触发次数
AnalySDK.trackEvent(eventName);
		
// 以携带参数的方式统计事件名称和触发次数,其中的eventParams是一个Map或者Json
AnalySDK.trackEvent(eventName, eventParams);

例如,统计一个界面的访问次数,可这样写:

HashMap<String, Object> eventParams = new HashMap<String, Object>();
eventParams.put("page", "Main Page");
AnalySDK.trackEvent("page-jump", eventParams);

这里的page-jump为事件名称,对应统计后台中的”事件code”,创建成功后不可修改,建议使用26个字母与数字的组合,事件上传成功会在Mob统计后台项目里查看并添加描述,方便管理,如下图所示;

 

2-2、添加地理位置信息

一旦添加了地理位置信息,所有的统计事件均会自动带上此位置信息,可在统计后台查看相关详细数据
接口为:

// 设置经纬度信息
AnalySDK.setLocation(longitude, latitude);

代码调用为

// 设置经纬度信息
AnalySDK.setLocation(120.1, 30.2);

 

2-3、用户事件

支持三种用户事件:用户注册、用户登录、用户信息修改

a>用户注册

接口为:AnalySDK.userRegist(GameUserEvent user)

代码调用如下:

GameUserEvent gameUserEvent = new GameUserEvent("1231312","小伙子");
gameUserEvent.regType = "微信";
gameUserEvent.regChannel ="应用宝";
gameUserEvent.userType = "测试账号";
gameUserEvent.addication = "是";
gameUserEvent.money = 12;
gameUserEvent.gender = "男";
gameUserEvent.county = "中国";
gameUserEvent.province = "上海";
gameUserEvent.city = "上海";
gameUserEvent.age = 19;
gameUserEvent.constellation ="处女";
gameUserEvent.zodiac = "long";
gameUserEvent.nickname = "西装情兽";
AnalySDK.userRegist(gameUserEvent);

b>用户登录

接口为:AnalySDK.userLogin(GameUserEvent user);

c>用户信息修改

接口为:AnalySDK.userUpdate(GameUserEvent user);

 

2-4、角色事件

支持三种角色事件:新建角色、角色登录、角色更新

a>新建角色

接口为:AnalySDK.roleCreate(RoleEvent roleEvent);

代码调用:

RoleEvent roleEvent = new RoleEvent("23123131","小米子");
roleEvent.roServer ="绝命一区";
roleEvent.roName = "剥皮人";
roleEvent.roCareer = "九魂道人";
roleEvent.roLevel = 999+1;
roleEvent.roVip = "vip4";
roleEvent.roRankLevel = 111;
roleEvent.roEnergy = 32;
roleEvent.roMoney = 55;
roleEvent.roCoin = 33;
roleEvent.roSource1 = 11;
roleEvent.roSource2 = 22;
roleEvent.roSource3 =33;
roleEvent.roSource4 = 44;
AnalySDK.roleCreate(roleEvent);

b>角色登录

接口为:AnalySDK.roleLogin(RoleEvent roleEvent);

c>角色更新

接口为:AnalySDK.roleUpdate(RoleEvent roleEvent);

 

2-5、支付事件

接口为:AnalySDK.trackPayEvent(PayEvent payEvent);

代码调用:

PayEvent payEvent = new PayEvent("12313123","hehheh");
payEvent.payMoney = 33;
payEvent.payContent = "月卡";
payEvent.payType = "微信";
payEvent.payActivity = "圣诞活动";
payEvent.payDiscount = 12;
payEvent.discountReason = "新用户打折";
AnalySDK.trackPayEvent(payEvent);

2-6、统计事件时长(统计SDK1.1.1版本增加)

一个事件的计时必须拥有behaviorStart和behaviorEnd埋点

同一个事件默认以堆栈形式开始-结束计时 ,更多详情可查看ApiDoc文档

如下统计一个页面显示时长事件:

A 事件开始

接口为:AnalySDK.behaviorStart(String eventName, HashMap<String, Object> eventObj)

代码调用如下:

HashMap<String, Object> map = new HashMap<String, Object>();
map.put("params", "openGamePage");
AnalySDK.behaviorStart("GamePage", map);

A’ 事件结束

接口为:AnalySDK.behaviorEnd (String eventName, HashMap<String, Object> eventObj)

代码调用如下:

HashMap<String, Object> map = new HashMap<String, Object>();
map.put("params", "closeGamePage");
AnalySDK.behaviorEnd("GamePage", map);
注意:Mob统计游戏专版为游戏行业做了垂直化定制,提供了3类共7个事件作为特殊事件;
强烈建议您调用SDK提供的方法直接埋点,这样将为您自动生成LTV、ARPU、ARRPU等游戏版专属数据分析模型  
点击查看详情

五、混淆设置

“Mob统计分析”已经做了混淆处理,再次混淆会导致不可预期的错误,请在您的混淆脚本中添加如下的配置,跳过对”Mob统计分析”的混淆操作:

-keep class com.mob.**{*;}

-dontwarn com.mob.**

六、注意事项

1、 如果使用MobSDK的模块会被其它模块依赖,请确保依赖它的模块也引入MobSDK插件,或在此模块的gradle中添加:

repositories {
    jcenter()
}