package org.cyanogenmod.oneclick; import android.content.ComponentName; import android.content.Context; import android.content.Intent; public class OneClickStats { public static final class Fields { public static final String EVENT_CATEGORY = "category"; public static final String EVENT_ACTION = "action"; public static final String EVENT_LABEL = "label"; public static final String EVENT_VALUE = "value"; } public static final class Categories { public static final String PAGE_SHOWN = "page_shown"; public static final String BUTTON_CLICK = "button_click"; public static final String SWITCH_ERROR = "switch_error"; } public static final class Actions { public static final String PAGE_COMPAT_CHECK = "1.compat_check"; public static final String PAGE_WELCOME = "2.Welcome"; public static final String PAGE_DISCLAIMER = "3.Disclaimer"; public static final String PAGE_ADB = "4.ADB"; public static final String PAGE_PTP = "5.PTP"; public static final String PAGE_HTC_FASTBOOT = "6.HTC_Fastboot"; public static final String PAGE_UNPLUG = "7.Unplug"; public static final String PAGE_FINISH = "8.Finish"; public static final String BTN_UNSUPP_CONT = "unsupp_cont"; public static final String BTN_WELCOME = "Welcome_Begin"; public static final String BTN_DISCLAIMER = "Disclaimer_Agree"; public static final String BTN_HTC_FASTBOOT = "HTC_Fastboot_cont"; public static final String BTN_PTP = "ptp_cont"; public static final String BTN_ADB = "adb_cont"; public static final String ERR_HTC_FASTBOOT = "HTC_Fastboot_cont_excep"; public static final String ERR_PTP = "ptp_cont_excep"; public static final String ERR_ADB = "adb_cont_excep"; } public static void sendEvent(Context context, String category, String action, String label, Long value) { if (context == null) { return; } // Create new intent Intent intent = new Intent(); intent.setComponent(new ComponentName(context, OneClickReportingIntentService.class)); // append intent.putExtra(Fields.EVENT_CATEGORY, category); intent.putExtra(Fields.EVENT_ACTION, action); // check if exist if (label != null) { intent.putExtra(Fields.EVENT_LABEL, label); } if (value != null) { intent.putExtra(Fields.EVENT_VALUE, value); } context.startService(intent); } public static void sendEvent(Context context, String category, String action) { sendEvent(context, category, action, null, null); } public static void sendEvent(Context context, String category, String action, String label) { sendEvent(context, category, action, label, null); } }