相比大家都遇到这种情况,当我们的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。