這兩年一直在做無線的測試,后續還會繼續去做無線的測試,但是之前因為時間的原因一直都沒有非常仔細的了解到代碼層面。近期抽空自己做了些app的開發,決定如果想把移動的測試做好做深入,有一定的app 開發經驗非常的有必要,因為只有這樣很多東西才能真正理解了。另一個方面,這本身也很有趣。目前嘗試的一些東西都還比較基礎,準備持續的做下去。
實踐的過程也想陸續整理出來,做下筆記,也給別人一些參考,遇到很多問題的時候也是到谷歌度娘的找答案,幫助很多。目前更多關注android,ios的部分稍繼續。
基本上現在任何一個實用的app都離不開埋點統計,否則應用撒出去就兩眼一抹黑了,也難以做運營和一些決策。為了進一步了解這一塊,除了看現有產品的做法(公司內部平臺),也想自己動手寫一下,加深理解,于是選擇了業界用得比較多的友盟平臺。
統計的維度很多,不過最基本的新增用戶和啟動次數。關于這個,可能就需要涉及到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是自己來定義。
……
然后在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的語句就異常了,如下面。官方文檔只是提到上面的步驟。
原文轉自:http://blog.csdn.net/superqa/article/details/24808107