diff --git a/src/amazon/java/org/tasks/analytics/Tracker.java b/src/amazon/java/org/tasks/analytics/Tracker.java
index faa2e9684..7a56f0f7d 100644
--- a/src/amazon/java/org/tasks/analytics/Tracker.java
+++ b/src/amazon/java/org/tasks/analytics/Tracker.java
@@ -59,9 +59,17 @@ public class Tracker {
}
public void reportEvent(Tracking.Events event, String label) {
+ reportEvent(event.category, event.action, label);
+ }
+
+ public void reportEvent(Tracking.Events event, int action, String label) {
+ reportEvent(event.category, action, label);
+ }
+
+ private void reportEvent(int category, int action, String label) {
HitBuilders.EventBuilder eventBuilder = new HitBuilders.EventBuilder()
- .setCategory(context.getString(event.category))
- .setAction(context.getString(event.action));
+ .setCategory(context.getString(category))
+ .setAction(context.getString(action));
if (!Strings.isNullOrEmpty(label)) {
eventBuilder.setLabel(label);
}
diff --git a/src/generic/java/org/tasks/analytics/Tracker.java b/src/generic/java/org/tasks/analytics/Tracker.java
index 1d8626d01..be0da64a1 100644
--- a/src/generic/java/org/tasks/analytics/Tracker.java
+++ b/src/generic/java/org/tasks/analytics/Tracker.java
@@ -32,4 +32,8 @@ public class Tracker {
public void reportEvent(Tracking.Events event, String string) {
}
+
+ public void reportEvent(Tracking.Events setPreference, int resId, String s) {
+
+ }
}
diff --git a/src/googleplay/java/org/tasks/analytics/Tracker.java b/src/googleplay/java/org/tasks/analytics/Tracker.java
index c199451f9..e4b48e7c7 100644
--- a/src/googleplay/java/org/tasks/analytics/Tracker.java
+++ b/src/googleplay/java/org/tasks/analytics/Tracker.java
@@ -60,9 +60,17 @@ public class Tracker {
}
public void reportEvent(Tracking.Events event, String label) {
+ reportEvent(event.category, event.action, label);
+ }
+
+ public void reportEvent(Tracking.Events event, int action, String label) {
+ reportEvent(event.category, action, label);
+ }
+
+ private void reportEvent(int category, int action, String label) {
HitBuilders.EventBuilder eventBuilder = new HitBuilders.EventBuilder()
- .setCategory(context.getString(event.category))
- .setAction(context.getString(event.action));
+ .setCategory(context.getString(category))
+ .setAction(context.getString(action));
if (!Strings.isNullOrEmpty(label)) {
eventBuilder.setLabel(label);
}
diff --git a/src/main/java/com/todoroo/astrid/actfm/TagSettingsActivity.java b/src/main/java/com/todoroo/astrid/actfm/TagSettingsActivity.java
index 42fa658b5..a424fbcc3 100644
--- a/src/main/java/com/todoroo/astrid/actfm/TagSettingsActivity.java
+++ b/src/main/java/com/todoroo/astrid/actfm/TagSettingsActivity.java
@@ -30,6 +30,8 @@ import com.todoroo.astrid.tags.TagService;
import com.todoroo.astrid.tags.TaskToTagMetadata;
import org.tasks.R;
+import org.tasks.analytics.Tracker;
+import org.tasks.analytics.Tracking;
import org.tasks.billing.PurchaseHelper;
import org.tasks.billing.PurchaseHelperCallback;
import org.tasks.dialogs.DialogBuilder;
@@ -73,6 +75,7 @@ public class TagSettingsActivity extends ThemedInjectingAppCompatActivity implem
@Inject ThemeCache themeCache;
@Inject PurchaseHelper purchaseHelper;
@Inject ThemeColor themeColor;
+ @Inject Tracker tracker;
@BindView(R.id.tag_name) EditText tagName;
@BindView(R.id.toolbar) Toolbar toolbar;
@@ -259,6 +262,7 @@ public class TagSettingsActivity extends ThemedInjectingAppCompatActivity implem
@Override
public void themePicked(ThemePickerDialog.ColorPalette palette, int index) {
+ tracker.reportEvent(Tracking.Events.SET_TAG_COLOR, Integer.toString(index));
selectedTheme = index;
updateTheme();
}
diff --git a/src/main/java/org/tasks/activities/ImportTaskActivity.java b/src/main/java/org/tasks/activities/ImportTaskActivity.java
index 803c56369..b0b3a4535 100644
--- a/src/main/java/org/tasks/activities/ImportTaskActivity.java
+++ b/src/main/java/org/tasks/activities/ImportTaskActivity.java
@@ -6,6 +6,7 @@ import android.os.Bundle;
import com.todoroo.astrid.backup.TasksXmlImporter;
+import org.tasks.analytics.Tracker;
import org.tasks.files.FileExplore;
import org.tasks.injection.ActivityComponent;
import org.tasks.injection.InjectingAppCompatActivity;
diff --git a/src/main/java/org/tasks/analytics/Tracking.java b/src/main/java/org/tasks/analytics/Tracking.java
index 2115a5260..f2b34813c 100644
--- a/src/main/java/org/tasks/analytics/Tracking.java
+++ b/src/main/java/org/tasks/analytics/Tracking.java
@@ -10,12 +10,14 @@ public class Tracking {
SET_THEME(R.string.tracking_category_preferences, R.string.p_theme),
SET_COLOR(R.string.tracking_category_preferences, R.string.p_theme_color),
SET_ACCENT(R.string.tracking_category_preferences, R.string.p_theme_accent),
+ SET_TAG_COLOR(R.string.tracking_category_tags, R.string.p_theme_color),
WIDGET_ADD(R.string.tracking_category_widget, R.string.tracking_action_add),
TIMER_START(R.string.tracking_category_timer, R.string.tracking_action_start),
GTASK_ENABLED(R.string.tracking_category_google_tasks, R.string.tracking_action_on),
GTASK_DISABLED(R.string.tracking_category_google_tasks, R.string.tracking_action_off),
GTASK_LOGOUT(R.string.tracking_category_google_tasks, R.string.tracking_action_clear),
- GTASK_MOVE(R.string.tracking_category_google_tasks, R.string.tracking_action_move);
+ GTASK_MOVE(R.string.tracking_category_google_tasks, R.string.tracking_action_move),
+ SET_PREFERENCE(R.string.tracking_category_preferences, 0);
public final int category;
public final int action;
diff --git a/src/main/java/org/tasks/preferences/AppearancePreferences.java b/src/main/java/org/tasks/preferences/AppearancePreferences.java
index 1cfc4b25f..b3c3491bb 100644
--- a/src/main/java/org/tasks/preferences/AppearancePreferences.java
+++ b/src/main/java/org/tasks/preferences/AppearancePreferences.java
@@ -9,6 +9,8 @@ import com.todoroo.astrid.api.Filter;
import org.tasks.R;
import org.tasks.activities.FilterSelectionActivity;
+import org.tasks.analytics.Tracker;
+import org.tasks.analytics.Tracking;
import org.tasks.injection.ActivityComponent;
import org.tasks.injection.InjectingPreferenceActivity;
@@ -25,6 +27,7 @@ public class AppearancePreferences extends InjectingPreferenceActivity {
@Inject Preferences preferences;
@Inject DefaultFilterProvider defaultFilterProvider;
+ @Inject Tracker tracker;
private Bundle result;
@@ -96,10 +99,11 @@ public class AppearancePreferences extends InjectingPreferenceActivity {
}
}
- private void setExtraOnChange(int resId, final String extra) {
+ private void setExtraOnChange(final int resId, final String extra) {
findPreference(getString(resId)).setOnPreferenceChangeListener(new Preference.OnPreferenceChangeListener() {
@Override
public boolean onPreferenceChange(Preference preference, Object newValue) {
+ tracker.reportEvent(Tracking.Events.SET_PREFERENCE, resId, newValue.toString());
result.putBoolean(extra, true);
return true;
}
diff --git a/src/main/res/values/keys.xml b/src/main/res/values/keys.xml
index cadee829b..a63e90ae9 100644
--- a/src/main/res/values/keys.xml
+++ b/src/main/res/values/keys.xml
@@ -285,6 +285,7 @@
Preferences
Widget
Timer
+ Tags
IAB
Gtask
Add