編輯:關於Android編程
在這裡簡單的介紹下怎麼統計自己研發的APP 的用戶活躍度,和使用量,以此來展示自己APP的用戶使用量!
我們的APP都需要注入數據分析,以供我們實時的了解APP的下載和使用量提供了依據!
不過我還是更多的偏好使用Umeng 統計,但因為項目要求,需要集成百度統計,為此簡單的介紹下使用!
集成開發步驟:
在百度統計Web網站https://mtj.baidu.com/web/welcome/login申請百度統計的AppKey 點擊SDK下載 https://mtj.baidu.com/web/sdk/index 下載SDK 當中包括先關的jar 包 在自己的基類中添加統計的相關APIimport com.baidu.mobstat.StatService; import com.wly.frame.utils.AppManager; import android.app.Activity; public class BaseActivity extends Activity { @Override public void setContentView(int layoutResID) { super.setContentView(layoutResID); AppManager.getAppManager().addActivity(this); } @Override protected void onResume() { // TODO Auto-generated method stub super.onResume(); StatService.onResume(this); } @Override protected void onPause() { // TODO Auto-generated method stub super.onPause(); StatService.onPause(this); } @Override protected void onDestroy() { super.onDestroy(); AppManager.getAppManager().finishActivity(this); } }
在AndroidManifest.xml 清單文件中聲明相關權限 渠道號,Appkey 等
在 meta-data 中聲明相關的AppKey
Application 的聲明設置
讓自己的Application extends FrontiaApplication
public class DemoApplication extends FrontiaApplication{ @Override public void onCreate(){ super.onCreate(); } }
在百度統計集成的SDK 文檔中並沒有闡述這點,本人是抱著試試的態度,然後就沒有 繼承 FrontiaApplication 這個東西!而是直接使用 DemoApplication extends Application 然後再清單文件中進行聲明
經過測試也是可以統計的!不知是否是因為 百度統計的更新!還是什麼,在此也沒有做更多的了解!如果讀者發現有什麼問題可以告知?
統計示例:
統計Activity 界面public class BaseActivity extends Activity { @Override public void setContentView(int layoutResID) { super.setContentView(layoutResID); AppManager.getAppManager().addActivity(this); } @Override protected void onResume() { // TODO Auto-generated method stub super.onResume(); StatService.onResume(this); } @Override protected void onPause() { // TODO Auto-generated method stub super.onPause(); StatService.onPause(this); } @Override protected void onDestroy() { super.onDestroy(); AppManager.getAppManager().finishActivity(this); } }
StatService.onResume(this); StatService.onPause(this); 統計的是具體的包名。在Web網站觀看的效果如下圖統計具體的界面
StatService.onPageStart(Context context, Sring pageName); StatService.onPageEnd(Context context, Sring pageName);
public class FounActivity extends Activity implements OnClickListener{ private TextView tv_back; private TextView tv_title; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_fount); initView(); } private void initView() { tv_back = (TextView) findViewById(R.id.tv_back); tv_back.setOnClickListener(this); tv_title = (TextView) findViewById(R.id.tv_title); tv_title.setText("發現"); } @Override public void onClick(View v) { switch (v.getId()) { case R.id.tv_back: finish(); break; default: break; } } @Override protected void onResume() { // TODO Auto-generated method stub super.onResume(); StatService.onPageStart(this, "發現界面"); } @Override protected void onPause() { // TODO Auto-generated method stub super.onPause(); StatService.onPageEnd(this, "發現界面"); } @Override protected void onDestroy() { // TODO Auto-generated method stub super.onDestroy(); } }
這樣的話就是統計的具體界面在Web網站看到的效果就是這樣!
vcq9o7q4+b7dsNm2yM2zvMa1xFNESyDOxLW1o6zKudPD19S2qNLlvefD5r340NDNs7zGo6y8tL/JveK+9rjDzsrM4qOsy/nS1NTZzbO8xkZyYWdtZW50tcTKsbryztLDx7u5ysfXosjr19S2qNLlzbO8xr3nw+a1xEFQSaGjDQo8cHJlIGNsYXNzPQ=="brush:java;"> public class SportFragment extends Fragment{ @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { return inflater.inflate(R.layout.fragment_contact_list, container, false); } @Override public void onResume() { // TODO Auto-generated method stub super.onResume(); StatService.onPageStart(getActivity, "運動界面"); } @Override public void onPause() { // TODO Auto-generated method stub super.onPause(); StatService.onPageEnd(getActivity, "運動界面"); } }
這樣就可以統計每個預覽的Fragment 界面了。
自定義事件
統計某個按鈕的熱度,我們可以使用自定義事件,首先我們需要在Web 網站中注冊並添加自定義事件,具體的操作就不在過多的贅述了,如果還有什麼不了解可以參考百度 統計的SDK文檔
API:
@params event_id 為在網站注冊的點擊事件id,二者必須對應 StatService.onEvent(Context context, String event_id, String label, int acc)
實例:
button.setOnClickListener(new View.onClickListener(){ @Override public void onClick(View v) { StatService.onEvent(MainActivity.this,"buildRequest","update",1) } });
截圖就不在上傳了!
其實吧,在統計數據方面我還是喜歡使用UMeng統計,不知你們覺得的呢?但是畢竟是由於項目的要求,為此在簡單的使用下!
公司機器上的Android Studio很時髦,每次都會准時接收到官方穩定版的推送。目前最新的穩定版本是1.4.1,增加了很多心動的功能。可是我的筆記本上的AS還在1.3
手機裡設置鬧鐘需要選擇時間,那個選擇時間的控件就是滾動選擇器,前幾天用手機刷了MIUI,發現自帶的那個時間選擇器效果挺好看的,於是就自己仿寫了一個,權當練手。先來看效果:
要想熟練地操作任何一個數據庫,最最基本的要求就是要懂SQL語言,這也是每個程序員都應該掌握的技能。雖說SQL博大精深,要想精通確實很難,但最基本的一些建表命
1. 模式介紹模式的定義定義對象間一種一對多的依賴關系,使得每當一個對象改變狀態,則所有依賴於它的對象都會得到通知並被自動更新。模式的使用場景關聯行為場景。需要注意的是,