Android 技术小结(003)—— “友盟统计”使用范例
Android 技术总结(003)—— “友盟统计”使用范例
package com.umeng.example.analytics; import java.util.HashMap; import android.app.Activity; import android.content.Context; import android.os.Bundle; import android.support.v4.app.Fragment; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.Button; import android.widget.Toast; import com.umeng.analytics.MobclickAgent; import com.umeng.example.R; import com.umeng.ui.BaseSinglePaneActivity; public class AnalyticsHome extends BaseSinglePaneActivity { private Context mContext; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); mContext = this; MobclickAgent.setDebugMode(true); // MobclickAgent.setAutoLocation(false); // MobclickAgent.setSessionContinueMillis(10000); // MobclickAgent.setUpdateOnlyWifi(false); MobclickAgent.onError(this); MobclickAgent.updateOnlineConfig(this); } @Override public void onResume() { super.onResume(); MobclickAgent.onResume(mContext); } @Override public void onPause() { super.onPause(); MobclickAgent.onPause(mContext); } @Override protected Fragment onCreatePane() { return new AnalyticsHomeDashboardFragment(); } public static class AnalyticsHomeDashboardFragment extends Fragment { Context mContext; private Button online_config; private Button event; private Button kv_event; private Button event_begin; private Button event_end; private Button event_duration; private View.OnClickListener listener = new View.OnClickListener() { public void onClick(View v) { // TODO Auto-generated method stub int id = v.getId(); if (id == R.id.umeng_example_analytics_online_config) { String onlineParams = MobclickAgent.getConfigParams( mContext, "abc");// the demo param's key is 'abc' if (onlineParams.equals("")) { Toast.makeText(mContext, "Get No Online Params", Toast.LENGTH_SHORT).show(); } else Toast.makeText(mContext, "Online Params:" + onlineParams, Toast.LENGTH_SHORT).show(); } else if (id == R.id.umeng_example_analytics_event) { MobclickAgent.onEvent(mContext, "click"); MobclickAgent.onEvent(mContext, "click", "button"); } else if (id == R.id.umeng_example_analytics_ekv) { HashMap<String, String> map = new HashMap<String, String>(); map.put("type", "popular"); map.put("artist", "JJLin"); MobclickAgent.onEvent(mContext, "music", map); } else if (id == R.id.umeng_example_analytics_duration) { // We need manual to compute the Events duration MobclickAgent.onEventDuration(mContext, "book", 12000); MobclickAgent.onEventDuration(mContext, "book", "chapter1", 23000); HashMap<String, String> map = new HashMap<String, String>(); map.put("type", "popular"); map.put("artist", "JJLin"); MobclickAgent.onEventDuration(mContext, "music", map, 2330000); } else if (id == R.id.umeng_example_analytics_event_begin) { // Log.i("duration", "start"); // when the events start MobclickAgent.onEventBegin(mContext, "music"); MobclickAgent.onEventBegin(mContext, "music", "one"); HashMap<String, String> map = new HashMap<String, String>(); map.put("type", "popular"); map.put("artist", "JJLin"); MobclickAgent.onKVEventBegin(mContext, "music", map, "flag0"); } else if (id == R.id.umeng_example_analytics_event_end) { // Log.i("duration", "end"); // when the event end MobclickAgent.onEventEnd(mContext, "music"); MobclickAgent.onEventEnd(mContext, "music", "one"); MobclickAgent.onKVEventEnd(mContext, "music", "flag0"); } } }; @Override public void onAttach(Activity activity) { super.onAttach(activity); mContext = activity; } @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View root = inflater.inflate(R.layout.umeng_example_analytics, container, false); findViews(root); return root; } private void findViews(View root) { online_config = (Button) root .findViewById(R.id.umeng_example_analytics_online_config); event = (Button) root .findViewById(R.id.umeng_example_analytics_event); kv_event = (Button) root .findViewById(R.id.umeng_example_analytics_ekv); event_begin = (Button) root .findViewById(R.id.umeng_example_analytics_event_begin); event_end = (Button) root .findViewById(R.id.umeng_example_analytics_event_end); event_duration = (Button) root .findViewById(R.id.umeng_example_analytics_duration); online_config.setOnClickListener(listener); event.setOnClickListener(listener); kv_event.setOnClickListener(listener); event_begin.setOnClickListener(listener); event_end.setOnClickListener(listener); event_duration.setOnClickListener(listener); } } }