MobclickAgent 友盟统计分析工具

1- 导入Analytics_Android_SDK_2.1.jar
Eclipse用户 右键您的工程根目录,选择Properties -> Java Build Path -> Libraries, 然后点击Add External JARs... 选择指向Analytics_Android_SDK_2.1.jar的路径,点击OK,即导入成功。
Android SDK tools 如果您是直接使用android SDK tools,只要将Analytics_Android_SDK_2.1.jar放在应用程序的libs目录下,and task会自动识别出来。
2- 配置AndroidManifest.xml
android.permission.INTERNET

向我们的服务器发送用户分析数据。
android.permission.READ_PHONE_STATE
这个权限仅为了获取用户手机的IMEI,用来唯一的标识用户。
android.permission.READ_LOGS (可选),
如果您想获得客户端crash的报告, 需要添加这个权限。具体见高级功能错误报告
将应用程序的Appkey (需要先添加应用程序获得Appkey)
写到AndroidManifest.xml的meta-data里。

1
2
3
4
5
6
7
<application......>
...
<meta-data android:value="XXXXXXYOURAPPKEYXXXXXXX" 
    android:name="UMENG_APPKEY">
meta-data>
...
application>

3.添加代码
1.添加 import com.mobclick.android.MobClickAgent

在每个Activity的onResume方法中调用 MobclickAgent.onResume(Context), 传入的参数为当前context的引用,这个方法将会自动地从AndroidManifest.xml文件里读取Appkey。
这里请不要将全局的application context传入。

1
2
3
4
public void onResume() {
  super.onResume();
  MobclickAgent.onResume(this);
}

3.在每个Activity的onPause方法中调用MobclickAgent.onPause(Context),

1
2
3
4
5
只需传入一个参数当前activitycontext.
public void onPause() {
  super.onPause();
  MobclickAgent.onPause(this);
}

一个应用程序在多个activity之间连续切换时,将会被视为同一个session,
所以需要您确保在所有的activity中都调用 MobclickAgent.onResume()和MobclickAgent.onPause()方法,这两个调用将不会阻塞应用程序的主线程,也不 会影响应用程序的行能。
当用户两次使用之间间隔超过30秒时,将被认为是两个的独立的session,
例如用户回到home,或进入其他程序,经过一段时间后再返回之前的应用。

4 测试
确认所需的权限都已经添加:
INTERNET, READ_PHONE_STATE, (READ_LOGS for crash report)
确认APPKEY已经正确的写入manifest.xml
确认所有的Activity中都调用了onResume和onPause方法
确认测试手机(或者模拟器)已成功连入网络
启动应用程序,几分钟之后您应该已经可以看到相应的报表.
如果几分钟后报表中仍然没有收到数据,请与我们的技术支持联系 QQ1589487991 或者邮件到[email protected]我们会尽快回复您

高级功能

1--错误报告 (crash report)
友盟统计分析工具,还可以帮助您捕捉用户在使用应用程序过程中出现的异常退出(FC), 并在应用程序下次启动时将错误报告发送给服务器。
错误报告包含应用程序版本,操作系统版本和设备型号以及程序出现异常时的Stacktrace,这些数据将帮助您修正应用程序Bug。
您需要在AndroidManifest.xml里面添加权限android.permission.READ_LOGS,
并且在程序的Main Activity (应用程序入口)的onCreate方法里调用MobclickAgent.onError(Context):

1
2
3
4
5
public void onCreate(Bundle savedinstanceState) {
    super.onCreate(savedInstanceState);
    MobclickAgent.onError(this);
    ...
}

2自定义事件分析
除了的基本统计分析功能外,我们还支持您自定义的事件分析,
例如您可以统计游戏中通过不同关卡的人数,广告的点击次数或者视频被播放的次数等等。
这里我们将提供几个简单而通用的接口:
简单事件
MobclickAgent.onEvent(Context context, String event_id);
将统计event_id对应事件的发生次数,变化趋势,例如广告点击,短信数量等等。参数context为当前context的引用。event_id为当前统计的事件ID,您可以在程序里直接定义,但是我们推荐您在 这里 预先定义。
一个例子,监测应用程序里广告的点击次数,事件ID为“ad_click”。那么需要在程序里每次广告点击后调用 MobclickAgent.onEvent(this, "ad_click") 通知服务器一个广告点击事件。

2.多标签事件
MobclickAgent.onEvent(Context context, String event_id, String label);
除了能够统计event_id所对应事件的发生次数,变化趋势外,还能统计事件中具体标签所占的比例。label为当前标签。
例如在我们的demo应用程序“星座罗盘”中,定义了一个事件“星座关注分布”,每个星座对应这个事件中的一个标签。我们可以在生产的统计图表中看到用户关注不同星座的比例。

3.事件累计
在应用程序中某些自定义事件可能会被频繁触发,例如用户点击某个按钮。开发者可以在程序中维护一个计数器,这样某个事件被多次触发但只需要生成一个消息,这个消息中包括该事件被触发的次数。为了支持这个功能,这里我们简单重载了之前的两个接口:
MobclickAgent.onEvent(Context context, String event_id, int acc);
MobclickAgent.onEvent(Context context, String event_id, String label, int acc);
参数acc是对应事件 (和对应标签)被触发的次数。

3.分发渠道分析
我们还提供方法帮助您分析应用程序的分发渠道,
例如有多少用户来自于联想乐phone,又有多少用户通过Google android market下载到您的应用程序。
简单的您只需要在AndroidManifest.xml里添加meta-data:。

当然,这需要您在不同渠道发布应用程序时,重新编译打包。

发送策略

1--实时发送
应用程序产生每条消息(包括启动信息,自定义消息,退出消息)时都会立即发送到服务器,
设置实时发送需要在应用程序Main Activity的onCreate()中调用。
MobclickAgent.setReportPolicy(ReportPolicy.REALTIME);

2--启动时发送
应用程序每次只会在启动时会向服务器发送一次消息,在应用程序过程中产生的所有消息(包括自定义事件和本次使用时长)都会在下次启动时候发送。

如果应用程序启动时处在不联网状态,那么消息将会缓存在本地,下次再尝试发送。
发送策略默认为启动时发送。

原文地址: http://my.eoe.cn/808632/archive/3168.html

你可能感兴趣的:(MobclickAgent 友盟统计分析工具)