Add metrics to tuner

Bug: 22462605
Change-Id: I075f9a25630a89e85dd17603297565988c38075b
This commit is contained in:
Jason Monk
2015-07-16 14:15:50 -04:00
parent 431ad737a4
commit a403159a3b
5 changed files with 56 additions and 4 deletions

View File

@@ -27,7 +27,20 @@ import android.view.View;
*/
public class MetricsLogger implements MetricsConstants {
// Temporary constants go here, to await migration to MetricsConstants.
// next value is 227;
// next value is 238;
public static final int TUNER = 227;
public static final int TUNER_QS = 228;
public static final int TUNER_DEMO_MODE = 229;
public static final int TUNER_QS_REORDER = 230;
public static final int TUNER_QS_ADD = 231;
public static final int TUNER_QS_REMOVE = 232;
public static final int TUNER_STATUS_BAR_ENABLE = 233;
public static final int TUNER_STATUS_BAR_DISABLE = 234;
public static final int TUNER_DEMO_MODE_ENABLED = 235;
public static final int TUNER_DEMO_MODE_ON = 236;
public static final int TUNER_BATTERY_PERCENTAGE = 237;
public static void visible(Context context, int category) throws IllegalArgumentException {
if (Build.IS_DEBUGGABLE && category == VIEW_UNKNOWN) {

View File

@@ -30,6 +30,7 @@ import android.preference.SwitchPreference;
import android.provider.Settings;
import android.view.MenuItem;
import com.android.internal.logging.MetricsLogger;
import com.android.systemui.DemoMode;
import com.android.systemui.R;
@@ -92,6 +93,18 @@ public class DemoModeFragment extends PreferenceFragment implements OnPreference
return super.onOptionsItemSelected(item);
}
@Override
public void onResume() {
super.onResume();
MetricsLogger.visibility(getContext(), MetricsLogger.TUNER_DEMO_MODE, true);
}
@Override
public void onPause() {
super.onPause();
MetricsLogger.visibility(getContext(), MetricsLogger.TUNER_DEMO_MODE, false);
}
@Override
public void onDestroy() {
getContext().getContentResolver().unregisterContentObserver(mDemoModeObserver);
@@ -113,15 +126,18 @@ public class DemoModeFragment extends PreferenceFragment implements OnPreference
@Override
public boolean onPreferenceChange(Preference preference, Object newValue) {
boolean enabled = newValue == Boolean.TRUE;
if (preference == mEnabledSwitch) {
if (newValue != Boolean.TRUE) {
if (!enabled) {
// Make sure we aren't in demo mode when disabling it.
mOnSwitch.setChecked(false);
stopDemoMode();
}
setGlobal(DemoMode.DEMO_MODE_ALLOWED, newValue == Boolean.TRUE ? 1 : 0);
MetricsLogger.action(getContext(), MetricsLogger.TUNER_DEMO_MODE_ENABLED, enabled);
setGlobal(DemoMode.DEMO_MODE_ALLOWED, enabled ? 1 : 0);
} else if (preference == mOnSwitch) {
if (newValue == Boolean.TRUE) {
MetricsLogger.action(getContext(), MetricsLogger.TUNER_DEMO_MODE_ON, enabled);
if (enabled) {
startDemoMode();
} else {
stopDemoMode();

View File

@@ -40,6 +40,7 @@ import android.widget.EditText;
import android.widget.FrameLayout;
import android.widget.ScrollView;
import com.android.internal.logging.MetricsLogger;
import com.android.systemui.R;
import com.android.systemui.qs.QSPanel;
import com.android.systemui.qs.QSTile;
@@ -79,6 +80,16 @@ public class QsTuner extends Fragment implements Callback {
menu.add(0, MENU_RESET, 0, com.android.internal.R.string.reset);
}
public void onResume() {
super.onResume();
MetricsLogger.visibility(getContext(), MetricsLogger.TUNER_QS, true);
}
public void onPause() {
super.onPause();
MetricsLogger.visibility(getContext(), MetricsLogger.TUNER_QS, false);
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
@@ -208,6 +219,8 @@ public class QsTuner extends Fragment implements Callback {
if (oldTile.equals(newTile)) {
return;
}
MetricsLogger.action(getContext(), MetricsLogger.TUNER_QS_REORDER, oldTile + ","
+ newTile);
List<String> order = new ArrayList<>(mTileSpecs);
int index = order.indexOf(oldTile);
if (index < 0) {
@@ -220,12 +233,14 @@ public class QsTuner extends Fragment implements Callback {
}
public void remove(String tile) {
MetricsLogger.action(getContext(), MetricsLogger.TUNER_QS_REMOVE, tile);
List<String> tiles = new ArrayList<>(mTileSpecs);
tiles.remove(tile);
setTiles(tiles);
}
public void add(String tile) {
MetricsLogger.action(getContext(), MetricsLogger.TUNER_QS_ADD, tile);
List<String> tiles = new ArrayList<>(mTileSpecs);
tiles.add(tile);
setTiles(tiles);

View File

@@ -23,6 +23,7 @@ import android.provider.Settings;
import android.text.TextUtils;
import android.util.AttributeSet;
import com.android.internal.logging.MetricsLogger;
import com.android.systemui.statusbar.phone.StatusBarIconController;
import com.android.systemui.tuner.TunerService.Tunable;
@@ -50,11 +51,14 @@ public class StatusBarSwitch extends SwitchPreference implements Tunable {
if (!value) {
// If not enabled add to blacklist.
if (!mBlacklist.contains(getKey())) {
MetricsLogger.action(getContext(), MetricsLogger.TUNER_STATUS_BAR_DISABLE,
getKey());
mBlacklist.add(getKey());
setList(mBlacklist);
}
} else {
if (mBlacklist.remove(getKey())) {
MetricsLogger.action(getContext(), MetricsLogger.TUNER_STATUS_BAR_ENABLE, getKey());
setList(mBlacklist);
}
}

View File

@@ -37,6 +37,7 @@ import android.view.Menu;
import android.view.MenuInflater;
import android.view.MenuItem;
import com.android.internal.logging.MetricsLogger;
import com.android.systemui.R;
import com.android.systemui.statusbar.phone.StatusBarIconController;
import com.android.systemui.tuner.TunerService.Tunable;
@@ -108,6 +109,7 @@ public class TunerFragment extends PreferenceFragment {
System.getUriFor(SHOW_PERCENT_SETTING), false, mSettingObserver);
registerPrefs(getPreferenceScreen());
MetricsLogger.visibility(getContext(), MetricsLogger.TUNER, true);
}
@Override
@@ -116,6 +118,7 @@ public class TunerFragment extends PreferenceFragment {
getContext().getContentResolver().unregisterContentObserver(mSettingObserver);
unregisterPrefs(getPreferenceScreen());
MetricsLogger.visibility(getContext(), MetricsLogger.TUNER, false);
}
private void registerPrefs(PreferenceGroup group) {
@@ -190,6 +193,7 @@ public class TunerFragment extends PreferenceFragment {
@Override
public boolean onPreferenceChange(Preference preference, Object newValue) {
final boolean v = (Boolean) newValue;
MetricsLogger.action(getContext(), MetricsLogger.TUNER_BATTERY_PERCENTAGE, v);
System.putInt(getContext().getContentResolver(), SHOW_PERCENT_SETTING, v ? 1 : 0);
return true;
}