当前位置: 代码迷 >> Android >> Android 技术小结(003)—— “友盟统计”使用范例
  详细解决方案

Android 技术小结(003)—— “友盟统计”使用范例

热度:6   发布时间:2016-05-01 15:12:34.0
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);        }    }}


  相关解决方案