android开发系列之友盟统计集成

      相比大家都遇到这种情况,当我们的app上线之后,我们想要实时的跟踪了解到app里面的bug情况、新增用户情况、用户相关的行为属性情况等。但是如果自己在app里面去开发集成这些功能,一方面开发工作量还挺大(包括前后端),另一方面统计信息也有可能非常不准确、不全面。那么有没有其他厂商去帮我们做这些事情呢?这个时候友盟就该闪亮登场了。

      今天我们主要看看在android app里面想要集成友盟的话,我们需要做哪些步骤呢?首先我们可以进到友盟的android文档中心,参考文档去集成,我们总结为以下几步:1.通过邮箱(最好为公司邮箱)申请友盟账号,然后通过刚刚申请的友盟账号,登录进到管控台,在里面添加一个app,这个时候我们就能够得到一个appKey。

      2.如果我们的开发环境是ADT,那么就需要到友盟的官网上面下载SDK,里面有统计要用到的jar包;如果我们的开发环境是android studio,那么我们还可以通过gradle里面的maven功能,直接添加如下依赖引用,代码如下:

dependencies {
   compile 'com.umeng.analytics:analytics:latest.integration'
}

      3.当我们将友盟jar包正确引用之后,就需要添加一下权限了,代码如下:

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

      4.这个时候我们还需要在AndroidMenifest.xml文件里面,配置当前app的appkey和渠道号了,代码如下:

<meta-data android:value="YOUR_APP_KEY" android:name="UMENG_APPKEY"></meta-data>
<meta-data android:value="Channel ID" android:name="UMENG_CHANNEL"/>

      5.这个时候我们就可以开始设置我们需要用到的统计类型了,其中session统计需要在每个activity的onResume、onPause方法里面调用如下代码:

public void onResume() {
super.onResume();
MobclickAgent.onResume(this);
}
public void onPause() {
super.onPause();
MobclickAgent.onPause(this);
}

 只有当我们调用了MobclickAgent.onResume()和MobclickAgent.onPause()方法,才能够保证获取正确的新增用户、活跃用户、启动次数、使用时长等基本数据。

      6.至此我们的app集成友盟的工作就大至完成了,如果你还想配置其他更多的统计、配置发送策略的话,请参考友盟官方文档。

      7.可能还有两点需要注意的问题:a.统计数据安全性,我们可以在app入口的activity里面添加如下代码:

AnalyticsConfig.enableEncrypt(boolean enable);

 当参数为true的时候就可以实现对日志信息的加密处理,false就是不加密。b.在对app代码进行混淆的时候,我们需要在混淆文件里面,进行如下配置:

-keepclassmembers class * {
   public <init> (org.json.JSONObject);
}

       8.还有一点可以认为是友盟统计的高级功能吧,就是计数事件和计算事件,具体区别可参照友盟sdk。

原文地址:https://www.cnblogs.com/xiaocai20091687/p/xiaocai-android-umeng.html