|
|
@@ -9,7 +9,7 @@ import android.support.annotation.StringRes;
|
|
|
|
|
|
import com.google.firebase.analytics.FirebaseAnalytics;
|
|
|
|
|
|
-import kr.co.zumo.app.lifeplus.util.ResourceUtil;
|
|
|
+import kr.co.zumo.app.R;
|
|
|
|
|
|
/**
|
|
|
* FirebaseAnalyticsHelper
|
|
|
@@ -23,8 +23,30 @@ import kr.co.zumo.app.lifeplus.util.ResourceUtil;
|
|
|
*/
|
|
|
public class FirebaseAnalyticsHelper extends Helper {
|
|
|
|
|
|
+ public static class Param {
|
|
|
+ public static final String SCREEN = "screen";
|
|
|
+ public static final String ITEM_NAME = "item_name";
|
|
|
+ public static final String CATEGORY_INDEX = "category_index";
|
|
|
+ public static final String CATEGORY_NAME = "category_name";
|
|
|
+ public static final String CONTENTS_INDEX = "contents_index";
|
|
|
+ public static final String CONTENTS_NAME = "contents_name";
|
|
|
+
|
|
|
+ protected Param() {
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ public static class Event {
|
|
|
+ public static final String MAIN = "main";
|
|
|
+ public static final String BUTTON = "button";
|
|
|
+
|
|
|
+ protected Event() {
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
private FirebaseAnalytics firebaseAnalytics;
|
|
|
|
|
|
+ private Context context;
|
|
|
+
|
|
|
@Override
|
|
|
protected void onCleared() {
|
|
|
firebaseAnalytics = null;
|
|
|
@@ -36,6 +58,7 @@ public class FirebaseAnalyticsHelper extends Helper {
|
|
|
* @param context
|
|
|
*/
|
|
|
public void init(Context context) {
|
|
|
+ this.context = context;
|
|
|
firebaseAnalytics = FirebaseAnalytics.getInstance(context);
|
|
|
firebaseAnalytics.setUserProperty("lifeplus", "android");
|
|
|
}
|
|
|
@@ -53,20 +76,50 @@ public class FirebaseAnalyticsHelper extends Helper {
|
|
|
/**
|
|
|
* 버튼 클릭 로그
|
|
|
*
|
|
|
+ * @param screen
|
|
|
* @param name
|
|
|
*/
|
|
|
- public void click(String name) {
|
|
|
+ public void click(String screen, String name) {
|
|
|
Bundle params = new Bundle();
|
|
|
- params.putString(FirebaseAnalytics.Param.ITEM_NAME, name);
|
|
|
- log(FirebaseAnalytics.Event.SELECT_CONTENT, params);
|
|
|
+ params.putString(Param.SCREEN, screen);
|
|
|
+ params.putString(Param.ITEM_NAME, name);
|
|
|
+ log(Event.BUTTON, params);
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* 버튼 클릭 로그
|
|
|
*
|
|
|
- * @param stringId
|
|
|
+ * @param screenStringId
|
|
|
+ * @param nameStringId
|
|
|
*/
|
|
|
- public void click(@StringRes int stringId) {
|
|
|
- click(ResourceUtil.getString(stringId));
|
|
|
+ public void click(@StringRes int screenStringId, @StringRes int nameStringId) {
|
|
|
+ click(context.getString(screenStringId), context.getString(nameStringId));
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 버튼 클릭 로그
|
|
|
+ *
|
|
|
+ * @param screen
|
|
|
+ * @param nameStringId
|
|
|
+ */
|
|
|
+ public void click(String screen, @StringRes int nameStringId) {
|
|
|
+ click(screen, context.getString(nameStringId));
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 메인 컨텐츠 클릭 이벤트 로깅
|
|
|
+ *
|
|
|
+ * @param categoryIndex
|
|
|
+ * @param categoryLabel
|
|
|
+ * @param contentIndex
|
|
|
+ * @param contentLabel
|
|
|
+ */
|
|
|
+ public void logMain(int categoryIndex, String categoryLabel, int contentIndex, String contentLabel) {
|
|
|
+ Bundle params = new Bundle();
|
|
|
+ params.putString(Param.CATEGORY_INDEX, String.valueOf(categoryIndex));
|
|
|
+ params.putString(Param.CATEGORY_NAME, context.getString(R.string.fa_main_category_string, categoryIndex, categoryLabel));
|
|
|
+ params.putString(Param.CONTENTS_INDEX, String.valueOf(contentIndex));
|
|
|
+ params.putString(Param.CONTENTS_NAME, context.getString(R.string.fa_main_contents_string, contentIndex, contentLabel));
|
|
|
+ log(Event.MAIN, params);
|
|
|
}
|
|
|
}
|