Use MetricsFeatureProvider in storage manager fragment.
Bug: 31664539
Test: make RunSettingsRoboTests for regression
Test: adb logcat -b events | egrep "(sysui_|notification_)" for
verifying log
Change-Id: I65743b87fdf6f010e40ca705e33e18642e0bfca3
diff --git a/src/com/android/settings/core/InstrumentedFragment.java b/src/com/android/settings/core/InstrumentedFragment.java
index 7fa9fc5..e50eae3 100644
--- a/src/com/android/settings/core/InstrumentedFragment.java
+++ b/src/com/android/settings/core/InstrumentedFragment.java
@@ -16,11 +16,14 @@
package com.android.settings.core;
+import android.content.Context;
import android.os.Bundle;
import com.android.settings.core.instrumentation.Instrumentable;
+import com.android.settings.core.instrumentation.MetricsFeatureProvider;
import com.android.settings.core.instrumentation.VisibilityLoggerMixin;
import com.android.settings.core.lifecycle.ObservablePreferenceFragment;
+import com.android.settings.overlay.FeatureFactory;
/**
* Instrumented fragment that logs visibility state.
@@ -28,12 +31,20 @@
public abstract class InstrumentedFragment extends ObservablePreferenceFragment
implements Instrumentable {
+ protected MetricsFeatureProvider mMetricsFeatureProvider;
+
public InstrumentedFragment() {
// Mixin that logs visibility change for activity.
getLifecycle().addObserver(new VisibilityLoggerMixin(getMetricsCategory()));
}
@Override
+ public void onAttach(Context context) {
+ super.onAttach(context);
+ mMetricsFeatureProvider = FeatureFactory.getFactory(context).getMetricsFeatureProvider();
+ }
+
+ @Override
public void onCreatePreferences(Bundle savedInstanceState, String rootKey) {
}
}
diff --git a/src/com/android/settings/deletionhelper/AutomaticStorageManagerSettings.java b/src/com/android/settings/deletionhelper/AutomaticStorageManagerSettings.java
index 0946f31..6177ab4 100644
--- a/src/com/android/settings/deletionhelper/AutomaticStorageManagerSettings.java
+++ b/src/com/android/settings/deletionhelper/AutomaticStorageManagerSettings.java
@@ -18,30 +18,20 @@
import android.app.Activity;
import android.content.ContentResolver;
-import android.content.Context;
import android.content.Intent;
-import android.content.res.Resources;
import android.os.Bundle;
import android.os.storage.StorageManager;
import android.provider.Settings;
-import android.text.format.DateUtils;
-import android.text.format.Formatter;
-import android.util.Log;
-import android.view.View;
-import android.widget.Switch;
import android.support.v14.preference.SwitchPreference;
import android.support.v7.preference.DropDownPreference;
import android.support.v7.preference.Preference;
import android.support.v7.preference.Preference.OnPreferenceChangeListener;
-import android.support.v7.preference.PreferenceScreen;
+import android.text.format.DateUtils;
+import android.text.format.Formatter;
-import com.android.internal.logging.MetricsLogger;
import com.android.internal.logging.MetricsProto.MetricsEvent;
-import com.android.settings.SettingsActivity;
-import com.android.settings.SettingsPreferenceFragment;
import com.android.settings.R;
-import com.android.settings.widget.SwitchBar;
-import com.android.settings.widget.SwitchBar.OnSwitchChangeListener;
+import com.android.settings.SettingsPreferenceFragment;
/**
* AutomaticStorageManagerSettings is the Settings screen for configuration and management of the
@@ -142,8 +132,8 @@
switch (preference.getKey()) {
case KEY_STORAGE_MANAGER_SWITCH:
boolean storageManagerChecked = (boolean) newValue;
- MetricsLogger.action(getContext(), MetricsEvent.ACTION_TOGGLE_STORAGE_MANAGER,
- storageManagerChecked);
+ mMetricsFeatureProvider.action(getContext(),
+ MetricsEvent.ACTION_TOGGLE_STORAGE_MANAGER, storageManagerChecked);
mDaysToRetain.setEnabled(storageManagerChecked);
Settings.Secure.putInt(getContentResolver(),
Settings.Secure.AUTOMATIC_STORAGE_MANAGER_ENABLED,