【转】Android 接入友盟

统计的维度很多,不过最基本的新增用户和启动次数。关于这个,可能就需要涉及到Android的activity的生命周期和状态改变。为了更好的理解,做了个简单的代码尝试。

protectedvoid onCreate(Bundle savedInstanceState) {        
super.onCreate(savedInstanceState);        
setContentView(R.layout.activity_main);        
Log.e(TAG,"enter onCreate”);
    }

    protectedvoid onStart() {          
super.onStart();          
Log.e(TAG,"onStart");      
    }      

    @Override
    protectedvoid onResume() {          
super.onResume();          
Log.e(TAG,"onResume");    
    }      

    @Override      
    protectedvoid onPause() {          
        super.onPause();          
        Log.e(TAG,"onPause");     
    }  

然后做了一些实验:
1. 第一次启动应用main activity有3个状态触发,onCreate,onStart,onResume

 

2. 按home键将应用切到后台,触发onPause和onStop

 

3. 长按home键,找到应用,重新切回前台,触发onStart和onResume


后面看友盟的sample code后发现也是基于这个来统计活跃用户的。好了,下面记录下接入友盟统计的过程。

首先,需要在AndroidManifest.xml中添加权限和一些配置,主要是appkey,这个在友盟网站注册好账号之后添加应用就可以获取到,Channel ID是自己来定义。

 

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

……
<meta-dataandroid:value=“535f487******"android:name="UMENG_APPKEY"></meta-data>
<meta-dataandroid:value="Test001"android:name="UMENG_CHANNEL”/>
</application>

然后在activity里面添加对应的代码,MobclickAgent class。

import com.umeng.analytics.MobclickAgent;

protectedvoid onCreate(Bundle savedInstanceState) {        
    super.onCreate(savedInstanceState);        
    MobclickAgent.updateOnlineConfig(this);
}

protectedvoid onResume() {          
    super.onResume();          
    Log.e(TAG,"onResume");         
    MobclickAgent.onResume(mContext);
}        

protectedvoid onPause() {      
    super.onPause();      
    Log.e(TAG,"onPause");     
    MobclickAgent.onPause(mContext);
}  

需要把umeng的jar包加到工程里面。



但是在Eclipse里面做完这一步之后发现还是遇到错误,一执行到MobclickAgent的语句就异常了,如下面。官方文档只是提到上面的步骤。



解决方案是把umeng的jar包放到工程的libs目录下。




接下来,App跑起来,几分钟之后就可以看到数据了。



启动次数这里因为是通过onResume()统计的, 所以有一些细节需要注意,看是否需要调整。



可以看到渠道的结果,就是之前在AndroidManifest.xml里面配置的。





设备的一些信息目前不能查看当天的结果,要第二天来看,还是比较准确的。



 




另外也试验了下自定义的Event。我的demo app里面有两段访问HTTP接口的地方,分别通过Apache HttpClient和Android HttpClient,想统计下调用次数以及响应时间。

在调用前后埋上对应的代码。
MobclickAgent.onEventBegin(this,"Android_http_visit”);
MobclickAgent.onEventEnd(this,"Android_http_visit");


 



总体来说,基本统计功能还不错,开发也很方便,比之前想象的要方便很多。但是结合我们实际产品用的自研BI工具的数据分析,以及和朋友了解到大规模实际使用的情况,一些偏应用层面的功能还不是特别够用。比如详细的用户访问路径方面。
下面能给出一些基本的模型。但是如果是产品和运营要做非常细致的分析还需要自己做一些工作。 



漏斗模型等因为demo app太简单还没来得及继续深入了解。这样了解下来发现再去读实际产品的运营数据,会感觉更容易理解一点。

 

转自:http://blog.csdn.net/superqa/article/details/24808107

posted @ 2016-02-23 09:01  安谧世界  阅读(758)  评论(0编辑  收藏  举报