diff options
author | Fan Zhang <zhfan@google.com> | 2016-09-22 10:43:12 -0700 |
---|---|---|
committer | Fan Zhang <zhfan@google.com> | 2016-09-23 08:37:37 -0700 |
commit | aa71afe5978b1340a2d702f3a75d22baf8c96348 (patch) | |
tree | 34dddea5e5f3e434edb80080b64511ae42616868 /src/com/android | |
parent | f91cf3cfa77af8de7ad2ae69fbb2d0550fefe33d (diff) | |
download | packages_apps_Settings-aa71afe5978b1340a2d702f3a75d22baf8c96348.tar.gz packages_apps_Settings-aa71afe5978b1340a2d702f3a75d22baf8c96348.tar.bz2 packages_apps_Settings-aa71afe5978b1340a2d702f3a75d22baf8c96348.zip |
Use MetricsFeatureProvider for logging in Settings.
Bug: 31664539
Test: make RunSettingsRoboTests for regression
Test: adb logcat -b events | egrep "(sysui_|notification_)" for
verifying log
Change-Id: Id944be7c4ff9911aebee481c2df485542f1318f0
Diffstat (limited to 'src/com/android')
27 files changed, 138 insertions, 125 deletions
diff --git a/src/com/android/settings/AirplaneModeEnabler.java b/src/com/android/settings/AirplaneModeEnabler.java index 950d52a04b..56a4ca075e 100644 --- a/src/com/android/settings/AirplaneModeEnabler.java +++ b/src/com/android/settings/AirplaneModeEnabler.java @@ -27,21 +27,21 @@ import android.provider.Settings; import android.support.v14.preference.SwitchPreference; import android.support.v7.preference.Preference; -import com.android.internal.logging.MetricsLogger; import com.android.internal.logging.MetricsProto.MetricsEvent; import com.android.internal.telephony.PhoneStateIntentReceiver; import com.android.internal.telephony.TelephonyProperties; +import com.android.settings.core.instrumentation.MetricsFeatureProvider; import com.android.settingslib.WirelessUtils; public class AirplaneModeEnabler implements Preference.OnPreferenceChangeListener { - private final Context mContext; + private static final int EVENT_SERVICE_STATE_CHANGED = 3; - private PhoneStateIntentReceiver mPhoneStateReceiver; - + private final Context mContext; private final SwitchPreference mSwitchPref; + private final MetricsFeatureProvider mMetricsFeatureProvider; - private static final int EVENT_SERVICE_STATE_CHANGED = 3; + private PhoneStateIntentReceiver mPhoneStateReceiver; private Handler mHandler = new Handler() { @Override @@ -61,19 +61,21 @@ public class AirplaneModeEnabler implements Preference.OnPreferenceChangeListene } }; - public AirplaneModeEnabler(Context context, SwitchPreference airplaneModeSwitchPreference) { - + public AirplaneModeEnabler(Context context, SwitchPreference airplaneModeSwitchPreference, + MetricsFeatureProvider metricsFeatureProvider) { + mContext = context; mSwitchPref = airplaneModeSwitchPreference; + mMetricsFeatureProvider = metricsFeatureProvider; airplaneModeSwitchPreference.setPersistent(false); - + mPhoneStateReceiver = new PhoneStateIntentReceiver(mContext, mHandler); mPhoneStateReceiver.notifyServiceState(EVENT_SERVICE_STATE_CHANGED); } public void resume() { - + mSwitchPref.setChecked(WirelessUtils.isAirplaneModeOn(mContext)); mPhoneStateReceiver.registerIntent(); @@ -82,7 +84,7 @@ public class AirplaneModeEnabler implements Preference.OnPreferenceChangeListene Settings.Global.getUriFor(Settings.Global.AIRPLANE_MODE_ON), true, mAirplaneModeObserver); } - + public void pause() { mPhoneStateReceiver.unregisterIntent(); mSwitchPref.setOnPreferenceChangeListener(null); @@ -91,11 +93,11 @@ public class AirplaneModeEnabler implements Preference.OnPreferenceChangeListene private void setAirplaneModeOn(boolean enabling) { // Change the system setting - Settings.Global.putInt(mContext.getContentResolver(), Settings.Global.AIRPLANE_MODE_ON, - enabling ? 1 : 0); + Settings.Global.putInt(mContext.getContentResolver(), Settings.Global.AIRPLANE_MODE_ON, + enabling ? 1 : 0); // Update the UI to reflect system setting mSwitchPref.setChecked(enabling); - + // Post the intent Intent intent = new Intent(Intent.ACTION_AIRPLANE_MODE_CHANGED); intent.putExtra("state", enabling); @@ -113,17 +115,17 @@ public class AirplaneModeEnabler implements Preference.OnPreferenceChangeListene private void onAirplaneModeChanged() { mSwitchPref.setChecked(WirelessUtils.isAirplaneModeOn(mContext)); } - + /** * Called when someone clicks on the checkbox preference. */ public boolean onPreferenceChange(Preference preference, Object newValue) { if (Boolean.parseBoolean( - SystemProperties.get(TelephonyProperties.PROPERTY_INECM_MODE))) { + SystemProperties.get(TelephonyProperties.PROPERTY_INECM_MODE))) { // In ECM mode, do not update database at this point } else { Boolean value = (Boolean) newValue; - MetricsLogger.action(mContext, MetricsEvent.ACTION_AIRPLANE_TOGGLE, value); + mMetricsFeatureProvider.action(mContext, MetricsEvent.ACTION_AIRPLANE_TOGGLE, value); setAirplaneModeOn(value); } return true; diff --git a/src/com/android/settings/BugreportPreference.java b/src/com/android/settings/BugreportPreference.java index 3aa3b75b4e..e929d3d0f6 100644 --- a/src/com/android/settings/BugreportPreference.java +++ b/src/com/android/settings/BugreportPreference.java @@ -21,19 +21,15 @@ import android.app.ActivityManagerNative; import android.app.AlertDialog.Builder; import android.content.Context; import android.content.DialogInterface; -import android.os.Handler; import android.os.RemoteException; -import android.text.format.DateUtils; import android.util.AttributeSet; import android.util.Log; import android.view.View; import android.widget.CheckedTextView; -import android.widget.RadioButton; import android.widget.TextView; -import android.widget.Toast; -import com.android.internal.logging.MetricsLogger; import com.android.internal.logging.MetricsProto.MetricsEvent; +import com.android.settings.overlay.FeatureFactory; public class BugreportPreference extends CustomDialogPreference { @@ -87,11 +83,12 @@ public class BugreportPreference extends CustomDialogPreference { final Context context = getContext(); if (mFullTitle.isChecked()) { Log.v(TAG, "Taking full bugreport right away"); - MetricsLogger.action(context, MetricsEvent.ACTION_BUGREPORT_FROM_SETTINGS_FULL); + FeatureFactory.getFactory(context).getMetricsFeatureProvider().action(context, + MetricsEvent.ACTION_BUGREPORT_FROM_SETTINGS_FULL); takeBugreport(ActivityManager.BUGREPORT_OPTION_FULL); } else { Log.v(TAG, "Taking interactive bugreport right away"); - MetricsLogger.action(context, + FeatureFactory.getFactory(context).getMetricsFeatureProvider().action(context, MetricsEvent.ACTION_BUGREPORT_FROM_SETTINGS_INTERACTIVE); takeBugreport(ActivityManager.BUGREPORT_OPTION_INTERACTIVE); } diff --git a/src/com/android/settings/DisplaySettings.java b/src/com/android/settings/DisplaySettings.java index 33ce5ad49c..561476728b 100644 --- a/src/com/android/settings/DisplaySettings.java +++ b/src/com/android/settings/DisplaySettings.java @@ -19,11 +19,9 @@ package com.android.settings; import android.app.Activity; import android.app.ActivityManager; import android.app.UiModeManager; -import android.app.WallpaperManager; import android.app.admin.DevicePolicyManager; import android.content.ContentResolver; import android.content.Context; -import android.content.ComponentName; import android.content.pm.PackageManager; import android.content.res.Configuration; import android.content.res.Resources; @@ -46,7 +44,6 @@ import android.text.TextUtils; import android.util.Log; import com.android.internal.app.NightDisplayController; -import com.android.internal.logging.MetricsLogger; import com.android.internal.logging.MetricsProto.MetricsEvent; import com.android.internal.view.RotationPolicy; import com.android.settings.accessibility.ToggleFontSizePreferenceFragment; @@ -61,13 +58,11 @@ import java.util.List; import static android.provider.Settings.Secure.CAMERA_GESTURE_DISABLED; import static android.provider.Settings.Secure.DOUBLE_TAP_TO_WAKE; -import static android.provider.Settings.Secure.DOZE_ENABLED; import static android.provider.Settings.Secure.WAKE_GESTURE_ENABLED; import static android.provider.Settings.System.SCREEN_BRIGHTNESS_MODE; import static android.provider.Settings.System.SCREEN_BRIGHTNESS_MODE_AUTOMATIC; import static android.provider.Settings.System.SCREEN_BRIGHTNESS_MODE_MANUAL; import static android.provider.Settings.System.SCREEN_OFF_TIMEOUT; - import static com.android.settingslib.RestrictedLockUtils.EnforcedAdmin; public class DisplaySettings extends SettingsPreferenceFragment implements @@ -194,7 +189,7 @@ public class DisplaySettings extends SettingsPreferenceFragment implements @Override public boolean onPreferenceChange(Preference preference, Object newValue) { final boolean locked = Integer.parseInt((String) newValue) != 0; - MetricsLogger.action(getActivity(), MetricsEvent.ACTION_ROTATION_LOCK, + mMetricsFeatureProvider.action(getActivity(), MetricsEvent.ACTION_ROTATION_LOCK, locked); RotationPolicy.setRotationLock(activity, locked); return true; @@ -437,7 +432,7 @@ public class DisplaySettings extends SettingsPreferenceFragment implements @Override public boolean onPreferenceTreeClick(Preference preference) { if (preference == mDozePreference) { - MetricsLogger.action(getActivity(), MetricsEvent.ACTION_AMBIENT_DISPLAY); + mMetricsFeatureProvider.action(getActivity(), MetricsEvent.ACTION_AMBIENT_DISPLAY); } return super.onPreferenceTreeClick(preference); } diff --git a/src/com/android/settings/SettingsPreferenceFragment.java b/src/com/android/settings/SettingsPreferenceFragment.java index 28230a97aa..5cc4011ddb 100644 --- a/src/com/android/settings/SettingsPreferenceFragment.java +++ b/src/com/android/settings/SettingsPreferenceFragment.java @@ -50,7 +50,6 @@ import com.android.settings.core.instrumentation.InstrumentedDialogFragment; import com.android.settingslib.HelpUtils; import java.util.UUID; -import java.util.concurrent.atomic.AtomicInteger; /** * Base class for Settings fragments, with some helper functions and dialog management. diff --git a/src/com/android/settings/WifiCallingSettings.java b/src/com/android/settings/WifiCallingSettings.java index 8d8f046142..f1a2fef334 100644 --- a/src/com/android/settings/WifiCallingSettings.java +++ b/src/com/android/settings/WifiCallingSettings.java @@ -39,7 +39,6 @@ import android.widget.TextView; import com.android.ims.ImsConfig; import com.android.ims.ImsManager; -import com.android.internal.logging.MetricsLogger; import com.android.internal.logging.MetricsProto.MetricsEvent; import com.android.internal.telephony.Phone; import com.android.settings.widget.SwitchBar; @@ -335,9 +334,9 @@ public class WifiCallingSettings extends SettingsPreferenceFragment int wfcMode = ImsManager.getWfcMode(context); updateButtonWfcMode(context, wfcEnabled, wfcMode); if (wfcEnabled) { - MetricsLogger.action(getActivity(), getMetricsCategory(), wfcMode); + mMetricsFeatureProvider.action(getActivity(), getMetricsCategory(), wfcMode); } else { - MetricsLogger.action(getActivity(), getMetricsCategory(), -1); + mMetricsFeatureProvider.action(getActivity(), getMetricsCategory(), -1); } } @@ -390,7 +389,7 @@ public class WifiCallingSettings extends SettingsPreferenceFragment if (buttonMode != currentMode) { ImsManager.setWfcMode(context, buttonMode); mButtonWfcMode.setSummary(getWfcModeSummary(context, buttonMode)); - MetricsLogger.action(getActivity(), getMetricsCategory(), buttonMode); + mMetricsFeatureProvider.action(getActivity(), getMetricsCategory(), buttonMode); } } return true; diff --git a/src/com/android/settings/WirelessSettings.java b/src/com/android/settings/WirelessSettings.java index 4017068990..fc572fb253 100644 --- a/src/com/android/settings/WirelessSettings.java +++ b/src/com/android/settings/WirelessSettings.java @@ -234,7 +234,8 @@ public class WirelessSettings extends SettingsPreferenceFragment implements Inde RestrictedPreference androidBeam = (RestrictedPreference) findPreference( KEY_ANDROID_BEAM_SETTINGS); - mAirplaneModeEnabler = new AirplaneModeEnabler(activity, mAirplaneModePreference); + mAirplaneModeEnabler = new AirplaneModeEnabler(activity, mAirplaneModePreference, + mMetricsFeatureProvider); mNfcEnabler = new NfcEnabler(activity, nfc, androidBeam); mButtonWfc = (PreferenceScreen) findPreference(KEY_WFC_SETTINGS); diff --git a/src/com/android/settings/accessibility/FontSizePreferenceFragmentForSetupWizard.java b/src/com/android/settings/accessibility/FontSizePreferenceFragmentForSetupWizard.java index fec3d375ef..0b64e96109 100644 --- a/src/com/android/settings/accessibility/FontSizePreferenceFragmentForSetupWizard.java +++ b/src/com/android/settings/accessibility/FontSizePreferenceFragmentForSetupWizard.java @@ -16,7 +16,6 @@ package com.android.settings.accessibility; -import com.android.internal.logging.MetricsLogger; import com.android.internal.logging.MetricsProto.MetricsEvent; public class FontSizePreferenceFragmentForSetupWizard @@ -31,7 +30,7 @@ public class FontSizePreferenceFragmentForSetupWizard public void onStop() { // Log the final choice in value if it's different from the previous value. if (mCurrentIndex != mInitialIndex) { - MetricsLogger.action(getContext(), MetricsEvent.SUW_ACCESSIBILITY_FONT_SIZE, + mMetricsFeatureProvider.action(getContext(), MetricsEvent.SUW_ACCESSIBILITY_FONT_SIZE, mCurrentIndex); } diff --git a/src/com/android/settings/accessibility/ToggleScreenMagnificationPreferenceFragmentForSetupWizard.java b/src/com/android/settings/accessibility/ToggleScreenMagnificationPreferenceFragmentForSetupWizard.java index c424c1ecf3..57983195c0 100644 --- a/src/com/android/settings/accessibility/ToggleScreenMagnificationPreferenceFragmentForSetupWizard.java +++ b/src/com/android/settings/accessibility/ToggleScreenMagnificationPreferenceFragmentForSetupWizard.java @@ -41,7 +41,7 @@ public class ToggleScreenMagnificationPreferenceFragmentForSetupWizard public void onStop() { // Log the final choice in value if it's different from the previous value. if (mToggleSwitch.isChecked() != mToggleSwitchWasInitiallyChecked) { - MetricsLogger.action(getContext(), + mMetricsFeatureProvider.action(getContext(), MetricsEvent.SUW_ACCESSIBILITY_TOGGLE_SCREEN_MAGNIFICATION, mToggleSwitch.isChecked()); } diff --git a/src/com/android/settings/accessibility/ToggleScreenReaderPreferenceFragmentForSetupWizard.java b/src/com/android/settings/accessibility/ToggleScreenReaderPreferenceFragmentForSetupWizard.java index 1ccae03f36..f96219b7a6 100644 --- a/src/com/android/settings/accessibility/ToggleScreenReaderPreferenceFragmentForSetupWizard.java +++ b/src/com/android/settings/accessibility/ToggleScreenReaderPreferenceFragmentForSetupWizard.java @@ -18,7 +18,6 @@ package com.android.settings.accessibility; import android.os.Bundle; -import com.android.internal.logging.MetricsLogger; import com.android.internal.logging.MetricsProto.MetricsEvent; public class ToggleScreenReaderPreferenceFragmentForSetupWizard @@ -41,7 +40,7 @@ public class ToggleScreenReaderPreferenceFragmentForSetupWizard public void onStop() { // Log the final choice in value if it's different from the previous value. if (mToggleSwitch.isChecked() != mToggleSwitchWasInitiallyChecked) { - MetricsLogger.action(getContext(), + mMetricsFeatureProvider.action(getContext(), MetricsEvent.SUW_ACCESSIBILITY_TOGGLE_SCREEN_READER, mToggleSwitch.isChecked()); } diff --git a/src/com/android/settings/bluetooth/BluetoothEnabler.java b/src/com/android/settings/bluetooth/BluetoothEnabler.java index d9de56dff2..18e3ed00df 100644 --- a/src/com/android/settings/bluetooth/BluetoothEnabler.java +++ b/src/com/android/settings/bluetooth/BluetoothEnabler.java @@ -24,13 +24,12 @@ import android.content.IntentFilter; import android.os.Handler; import android.os.Message; import android.provider.Settings; -import android.util.Log; import android.widget.Switch; import android.widget.Toast; -import com.android.internal.logging.MetricsLogger; import com.android.internal.logging.MetricsProto.MetricsEvent; import com.android.settings.R; +import com.android.settings.core.instrumentation.MetricsFeatureProvider; import com.android.settings.search.Index; import com.android.settings.widget.SwitchBar; import com.android.settingslib.WirelessUtils; @@ -43,9 +42,10 @@ import com.android.settingslib.bluetooth.LocalBluetoothManager; * preference reflects the current state. */ public final class BluetoothEnabler implements SwitchBar.OnSwitchChangeListener { + private final Switch mSwitch; + private final SwitchBar mSwitchBar; + private final MetricsFeatureProvider mMetricsFeatureProvider; private Context mContext; - private Switch mSwitch; - private SwitchBar mSwitchBar; private boolean mValidListener; private final LocalBluetoothAdapter mLocalAdapter; private final IntentFilter mIntentFilter; @@ -76,8 +76,10 @@ public final class BluetoothEnabler implements SwitchBar.OnSwitchChangeListener } }; - public BluetoothEnabler(Context context, SwitchBar switchBar) { + public BluetoothEnabler(Context context, SwitchBar switchBar, + MetricsFeatureProvider metricsFeatureProvider) { mContext = context; + mMetricsFeatureProvider = metricsFeatureProvider; mSwitchBar = switchBar; mSwitch = switchBar.getSwitch(); mValidListener = false; @@ -187,7 +189,7 @@ public final class BluetoothEnabler implements SwitchBar.OnSwitchChangeListener switchView.setChecked(false); } - MetricsLogger.action(mContext, MetricsEvent.ACTION_BLUETOOTH_TOGGLE, isChecked); + mMetricsFeatureProvider.action(mContext, MetricsEvent.ACTION_BLUETOOTH_TOGGLE, isChecked); if (mLocalAdapter != null) { boolean status = mLocalAdapter.setBluetoothEnabled(isChecked); diff --git a/src/com/android/settings/bluetooth/BluetoothSettings.java b/src/com/android/settings/bluetooth/BluetoothSettings.java index 99a2700a6f..3dfcfc7021 100644 --- a/src/com/android/settings/bluetooth/BluetoothSettings.java +++ b/src/com/android/settings/bluetooth/BluetoothSettings.java @@ -40,7 +40,7 @@ import android.view.MenuInflater; import android.view.MenuItem; import android.view.View; import android.widget.TextView; -import com.android.internal.logging.MetricsLogger; + import com.android.internal.logging.MetricsProto.MetricsEvent; import com.android.settings.LinkifyUtils; import com.android.settings.R; @@ -146,7 +146,7 @@ public final class BluetoothSettings extends DeviceListPreferenceFragment implem final SettingsActivity activity = (SettingsActivity) getActivity(); mSwitchBar = activity.getSwitchBar(); - mBluetoothEnabler = new BluetoothEnabler(activity, mSwitchBar); + mBluetoothEnabler = new BluetoothEnabler(activity, mSwitchBar, mMetricsFeatureProvider); mBluetoothEnabler.setupSwitchBar(); } @@ -248,19 +248,22 @@ public final class BluetoothSettings extends DeviceListPreferenceFragment implem switch (item.getItemId()) { case MENU_ID_SCAN: if (mLocalAdapter.getBluetoothState() == BluetoothAdapter.STATE_ON) { - MetricsLogger.action(getActivity(), MetricsEvent.ACTION_BLUETOOTH_SCAN); + mMetricsFeatureProvider.action(getActivity(), + MetricsEvent.ACTION_BLUETOOTH_SCAN); startScanning(); } return true; case MENU_ID_RENAME_DEVICE: - MetricsLogger.action(getActivity(), MetricsEvent.ACTION_BLUETOOTH_RENAME); + mMetricsFeatureProvider.action(getActivity(), + MetricsEvent.ACTION_BLUETOOTH_RENAME); new BluetoothNameDialogFragment().show( getFragmentManager(), "rename device"); return true; case MENU_ID_SHOW_RECEIVED: - MetricsLogger.action(getActivity(), MetricsEvent.ACTION_BLUETOOTH_FILES); + mMetricsFeatureProvider.action(getActivity(), + MetricsEvent.ACTION_BLUETOOTH_FILES); Intent intent = new Intent(BTOPP_ACTION_OPEN_RECEIVED_FILES); getActivity().sendBroadcast(intent); return true; diff --git a/src/com/android/settings/core/instrumentation/InstrumentedDialogFragment.java b/src/com/android/settings/core/instrumentation/InstrumentedDialogFragment.java index f0a3fed8f7..dd3c1ccee3 100644 --- a/src/com/android/settings/core/instrumentation/InstrumentedDialogFragment.java +++ b/src/com/android/settings/core/instrumentation/InstrumentedDialogFragment.java @@ -15,14 +15,18 @@ */ package com.android.settings.core.instrumentation; +import android.content.Context; + import com.android.settings.DialogCreatable; import com.android.settings.core.lifecycle.ObservableDialogFragment; +import com.android.settings.overlay.FeatureFactory; public abstract class InstrumentedDialogFragment extends ObservableDialogFragment implements Instrumentable { protected final DialogCreatable mDialogCreatable; protected int mDialogId; + protected MetricsFeatureProvider mMetricsFeatureProvider; public InstrumentedDialogFragment() { this(null /* parentFragment */, 0 /* dialogId */); @@ -37,4 +41,10 @@ public abstract class InstrumentedDialogFragment extends ObservableDialogFragmen mLifecycle.addObserver(new VisibilityLoggerMixin(getMetricsCategory())); } + + @Override + public void onAttach(Context context) { + super.onAttach(context); + mMetricsFeatureProvider = FeatureFactory.getFactory(context).getMetricsFeatureProvider(); + } } diff --git a/src/com/android/settings/dashboard/DashboardContainerFragment.java b/src/com/android/settings/dashboard/DashboardContainerFragment.java index 2b5e67e5ec..3477d90921 100644 --- a/src/com/android/settings/dashboard/DashboardContainerFragment.java +++ b/src/com/android/settings/dashboard/DashboardContainerFragment.java @@ -27,11 +27,11 @@ import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; -import com.android.internal.logging.MetricsLogger; import com.android.internal.logging.MetricsProto; import com.android.settings.core.InstrumentedFragment; import com.android.settings.R; import com.android.settings.SettingsActivity; +import com.android.settings.core.instrumentation.MetricsFeatureProvider; import com.android.settings.overlay.FeatureFactory; import com.android.settings.overlay.SupportFeatureProvider; import com.android.settings.widget.RtlCompatibleViewPager; @@ -73,7 +73,7 @@ public final class DashboardContainerFragment extends InstrumentedFragment { getChildFragmentManager(), mViewPager); mViewPager.setAdapter(mPagerAdapter); mViewPager.addOnPageChangeListener( - new TabChangeListener((SettingsActivity) getActivity())); + new TabChangeListener((SettingsActivity) getActivity(), mMetricsFeatureProvider)); // check if support tab needs to be selected final String selectedTab = getArguments(). @@ -157,9 +157,12 @@ public final class DashboardContainerFragment extends InstrumentedFragment { implements RtlCompatibleViewPager.OnPageChangeListener { private final SettingsActivity mActivity; + private final MetricsFeatureProvider mMetricsFeatureProvider; - public TabChangeListener(SettingsActivity activity) { + public TabChangeListener(SettingsActivity activity, + MetricsFeatureProvider metricsFeatureProvider) { mActivity = activity; + mMetricsFeatureProvider = metricsFeatureProvider; } @Override @@ -176,12 +179,12 @@ public final class DashboardContainerFragment extends InstrumentedFragment { public void onPageSelected(int position) { switch (position) { case INDEX_SUMMARY_FRAGMENT: - MetricsLogger.action( + mMetricsFeatureProvider.action( mActivity, MetricsProto.MetricsEvent.ACTION_SELECT_SUMMARY); mActivity.setDisplaySearchMenu(true); break; case INDEX_SUPPORT_FRAGMENT: - MetricsLogger.action( + mMetricsFeatureProvider.action( mActivity, MetricsProto.MetricsEvent.ACTION_SELECT_SUPPORT_FRAGMENT); mActivity.setDisplaySearchMenu(false); break; diff --git a/src/com/android/settings/dashboard/DashboardSummary.java b/src/com/android/settings/dashboard/DashboardSummary.java index 4ca84a174c..fb8c959ed8 100644 --- a/src/com/android/settings/dashboard/DashboardSummary.java +++ b/src/com/android/settings/dashboard/DashboardSummary.java @@ -31,12 +31,10 @@ import com.android.settings.R; import com.android.settings.Settings; import com.android.settings.SettingsActivity; import com.android.settings.core.InstrumentedFragment; -import com.android.settings.core.instrumentation.MetricsFeatureProvider; import com.android.settings.dashboard.conditional.Condition; import com.android.settings.dashboard.conditional.ConditionAdapterUtils; import com.android.settings.dashboard.conditional.ConditionManager; import com.android.settings.dashboard.conditional.FocusRecyclerView; -import com.android.settings.overlay.FeatureFactory; import com.android.settingslib.SuggestionParser; import com.android.settingslib.drawer.DashboardCategory; import com.android.settingslib.drawer.SettingsDrawerActivity; diff --git a/src/com/android/settings/datausage/CellDataPreference.java b/src/com/android/settings/datausage/CellDataPreference.java index b6daa4ad98..aa4001d873 100644 --- a/src/com/android/settings/datausage/CellDataPreference.java +++ b/src/com/android/settings/datausage/CellDataPreference.java @@ -33,11 +33,12 @@ import android.util.AttributeSet; import android.util.Log; import android.view.View; import android.widget.Checkable; -import com.android.internal.logging.MetricsLogger; + import com.android.internal.logging.MetricsProto.MetricsEvent; import com.android.settings.CustomDialogPreference; import com.android.settings.R; import com.android.settings.Utils; +import com.android.settings.overlay.FeatureFactory; import java.util.List; @@ -110,7 +111,9 @@ public class CellDataPreference extends CustomDialogPreference implements Templa @Override protected void performClick(View view) { - MetricsLogger.action(getContext(), MetricsEvent.ACTION_CELL_DATA_TOGGLE, !mChecked); + final Context context = getContext(); + FeatureFactory.getFactory(context).getMetricsFeatureProvider() + .action(context, MetricsEvent.ACTION_CELL_DATA_TOGGLE, !mChecked); if (mChecked) { final SubscriptionInfo currentSir = mSubscriptionManager.getActiveSubscriptionInfo( mSubId); diff --git a/src/com/android/settings/datausage/DataSaverBackend.java b/src/com/android/settings/datausage/DataSaverBackend.java index 977f0a0caf..3b3ff9c5a1 100644 --- a/src/com/android/settings/datausage/DataSaverBackend.java +++ b/src/com/android/settings/datausage/DataSaverBackend.java @@ -19,12 +19,11 @@ import android.net.INetworkPolicyListener; import android.net.NetworkPolicyManager; import android.os.Handler; import android.os.RemoteException; -import android.os.ServiceManager; -import android.util.Log; import android.util.SparseIntArray; -import com.android.internal.logging.MetricsLogger; import com.android.internal.logging.MetricsProto.MetricsEvent; +import com.android.settings.core.instrumentation.MetricsFeatureProvider; +import com.android.settings.overlay.FeatureFactory; import java.util.ArrayList; @@ -37,6 +36,7 @@ public class DataSaverBackend { private static final String TAG = "DataSaverBackend"; private final Context mContext; + private final MetricsFeatureProvider mMetricsFeatureProvider; private final Handler mHandler = new Handler(); private final NetworkPolicyManager mPolicyManager; @@ -48,6 +48,7 @@ public class DataSaverBackend { // TODO: Staticize into only one. public DataSaverBackend(Context context) { mContext = context; + mMetricsFeatureProvider = FeatureFactory.getFactory(context).getMetricsFeatureProvider(); mPolicyManager = NetworkPolicyManager.from(context); } @@ -72,7 +73,8 @@ public class DataSaverBackend { public void setDataSaverEnabled(boolean enabled) { mPolicyManager.setRestrictBackground(enabled); - MetricsLogger.action(mContext, MetricsEvent.ACTION_DATA_SAVER_MODE, enabled ? 1 : 0); + mMetricsFeatureProvider.action( + mContext, MetricsEvent.ACTION_DATA_SAVER_MODE, enabled ? 1 : 0); } public void refreshWhitelist() { @@ -84,7 +86,8 @@ public class DataSaverBackend { mPolicyManager.setUidPolicy(uid, policy); mUidPolicies.put(uid, policy); if (whitelisted) { - MetricsLogger.action(mContext, MetricsEvent.ACTION_DATA_SAVER_WHITELIST, packageName); + mMetricsFeatureProvider.action( + mContext, MetricsEvent.ACTION_DATA_SAVER_WHITELIST, packageName); } } @@ -122,7 +125,8 @@ public class DataSaverBackend { mPolicyManager.setUidPolicy(uid, policy); mUidPolicies.put(uid, policy); if (blacklisted) { - MetricsLogger.action(mContext, MetricsEvent.ACTION_DATA_SAVER_BLACKLIST, packageName); + mMetricsFeatureProvider.action( + mContext, MetricsEvent.ACTION_DATA_SAVER_BLACKLIST, packageName); } } diff --git a/src/com/android/settings/display/ScreenZoomPreferenceFragmentForSetupWizard.java b/src/com/android/settings/display/ScreenZoomPreferenceFragmentForSetupWizard.java index aa223fab3f..bfe4a779b7 100644 --- a/src/com/android/settings/display/ScreenZoomPreferenceFragmentForSetupWizard.java +++ b/src/com/android/settings/display/ScreenZoomPreferenceFragmentForSetupWizard.java @@ -16,7 +16,6 @@ package com.android.settings.display; -import com.android.internal.logging.MetricsLogger; import com.android.internal.logging.MetricsProto.MetricsEvent; public class ScreenZoomPreferenceFragmentForSetupWizard @@ -31,8 +30,8 @@ public class ScreenZoomPreferenceFragmentForSetupWizard public void onStop() { // Log the final choice in value if it's different from the previous value. if (mCurrentIndex != mInitialIndex) { - MetricsLogger.action(getContext(), MetricsEvent.SUW_ACCESSIBILITY_DISPLAY_SIZE, - mCurrentIndex); + mMetricsFeatureProvider.action( + getContext(), MetricsEvent.SUW_ACCESSIBILITY_DISPLAY_SIZE, mCurrentIndex); } super.onStop(); diff --git a/src/com/android/settings/fingerprint/FingerprintSettings.java b/src/com/android/settings/fingerprint/FingerprintSettings.java index 5bb08560d8..b044ce3989 100644 --- a/src/com/android/settings/fingerprint/FingerprintSettings.java +++ b/src/com/android/settings/fingerprint/FingerprintSettings.java @@ -21,7 +21,6 @@ import android.annotation.Nullable; import android.app.Activity; import android.app.AlertDialog; import android.app.Dialog; -import android.app.DialogFragment; import android.app.admin.DevicePolicyManager; import android.content.ActivityNotFoundException; import android.content.Context; @@ -40,8 +39,8 @@ import android.os.Handler; import android.os.UserHandle; import android.os.UserManager; import android.support.v7.preference.Preference; -import android.support.v7.preference.Preference.OnPreferenceClickListener; import android.support.v7.preference.Preference.OnPreferenceChangeListener; +import android.support.v7.preference.Preference.OnPreferenceClickListener; import android.support.v7.preference.PreferenceGroup; import android.support.v7.preference.PreferenceScreen; import android.support.v7.preference.PreferenceViewHolder; @@ -60,16 +59,15 @@ import android.widget.EditText; import android.widget.TextView; import android.widget.Toast; -import com.android.internal.logging.MetricsLogger; import com.android.internal.logging.MetricsProto.MetricsEvent; import com.android.settings.ChooseLockGeneric; import com.android.settings.ChooseLockSettingsHelper; -import com.android.settings.core.instrumentation.InstrumentedDialogFragment; -import com.android.settingslib.HelpUtils; import com.android.settings.R; import com.android.settings.SettingsPreferenceFragment; import com.android.settings.SubSettings; import com.android.settings.Utils; +import com.android.settings.core.instrumentation.InstrumentedDialogFragment; +import com.android.settingslib.HelpUtils; import com.android.settingslib.RestrictedLockUtils; import java.util.List; @@ -594,7 +592,7 @@ public class FingerprintSettings extends SubSettings { if (DEBUG) { Log.v(TAG, "rename " + name + " to " + newName); } - MetricsLogger.action(getContext(), + mMetricsFeatureProvider.action(getContext(), MetricsEvent.ACTION_FINGERPRINT_RENAME, mFp.getFingerId()); FingerprintSettingsFragment parent @@ -639,7 +637,7 @@ public class FingerprintSettings extends SubSettings { private void onDeleteClick(DialogInterface dialog) { if (DEBUG) Log.v(TAG, "Removing fpId=" + mFp.getFingerId()); - MetricsLogger.action(getContext(), MetricsEvent.ACTION_FINGERPRINT_DELETE, + mMetricsFeatureProvider.action(getContext(), MetricsEvent.ACTION_FINGERPRINT_DELETE, mFp.getFingerId()); FingerprintSettingsFragment parent = (FingerprintSettingsFragment) getTargetFragment(); diff --git a/src/com/android/settings/notification/ZenModeAutomationSettings.java b/src/com/android/settings/notification/ZenModeAutomationSettings.java index dbead5aa43..f897733fcd 100644 --- a/src/com/android/settings/notification/ZenModeAutomationSettings.java +++ b/src/com/android/settings/notification/ZenModeAutomationSettings.java @@ -39,7 +39,6 @@ import android.support.v7.preference.PreferenceScreen; import android.support.v7.preference.PreferenceViewHolder; import android.view.View; -import com.android.internal.logging.MetricsLogger; import com.android.internal.logging.MetricsProto.MetricsEvent; import com.android.settings.R; import com.android.settings.utils.ManagedServiceSettings.Config; @@ -109,7 +108,7 @@ public class ZenModeAutomationSettings extends ZenModeSettingsBase { new ZenRuleNameDialog(mContext, null) { @Override public void onOk(String ruleName) { - MetricsLogger.action(mContext, MetricsEvent.ACTION_ZEN_ADD_RULE_OK); + mMetricsFeatureProvider.action(mContext, MetricsEvent.ACTION_ZEN_ADD_RULE_OK); AutomaticZenRule rule = new AutomaticZenRule(ruleName, ri.serviceComponent, ri.defaultConditionId, NotificationManager.INTERRUPTION_FILTER_PRIORITY, true); @@ -129,7 +128,8 @@ public class ZenModeAutomationSettings extends ZenModeSettingsBase { new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { - MetricsLogger.action(mContext, MetricsEvent.ACTION_ZEN_DELETE_RULE_OK); + mMetricsFeatureProvider.action(mContext, + MetricsEvent.ACTION_ZEN_DELETE_RULE_OK); removeZenRule(ruleId); } }) @@ -173,7 +173,7 @@ public class ZenModeAutomationSettings extends ZenModeSettingsBase { p.setOnPreferenceClickListener(new OnPreferenceClickListener() { @Override public boolean onPreferenceClick(Preference preference) { - MetricsLogger.action(mContext, MetricsEvent.ACTION_ZEN_ADD_RULE); + mMetricsFeatureProvider.action(mContext, MetricsEvent.ACTION_ZEN_ADD_RULE); showAddRuleDialog(); return true; } diff --git a/src/com/android/settings/notification/ZenModePrioritySettings.java b/src/com/android/settings/notification/ZenModePrioritySettings.java index 4705d4dc72..cfac1f52f0 100644 --- a/src/com/android/settings/notification/ZenModePrioritySettings.java +++ b/src/com/android/settings/notification/ZenModePrioritySettings.java @@ -27,7 +27,6 @@ import android.support.v7.preference.Preference.OnPreferenceChangeListener; import android.support.v7.preference.PreferenceScreen; import android.util.Log; -import com.android.internal.logging.MetricsLogger; import com.android.internal.logging.MetricsProto.MetricsEvent; import com.android.settings.R; import com.android.settings.search.Indexable; @@ -64,7 +63,8 @@ public class ZenModePrioritySettings extends ZenModeSettingsBase implements Inde public boolean onPreferenceChange(Preference preference, Object newValue) { if (mDisableListeners) return true; final boolean val = (Boolean) newValue; - MetricsLogger.action(mContext, MetricsEvent.ACTION_ZEN_ALLOW_REMINDERS, val); + mMetricsFeatureProvider.action(mContext, MetricsEvent.ACTION_ZEN_ALLOW_REMINDERS, + val); if (DEBUG) Log.d(TAG, "onPrefChange allowReminders=" + val); savePolicy(getNewPriorityCategories(val, Policy.PRIORITY_CATEGORY_REMINDERS), mPolicy.priorityCallSenders, mPolicy.priorityMessageSenders, @@ -79,7 +79,7 @@ public class ZenModePrioritySettings extends ZenModeSettingsBase implements Inde public boolean onPreferenceChange(Preference preference, Object newValue) { if (mDisableListeners) return true; final boolean val = (Boolean) newValue; - MetricsLogger.action(mContext, MetricsEvent.ACTION_ZEN_ALLOW_EVENTS, val); + mMetricsFeatureProvider.action(mContext, MetricsEvent.ACTION_ZEN_ALLOW_EVENTS, val); if (DEBUG) Log.d(TAG, "onPrefChange allowEvents=" + val); savePolicy(getNewPriorityCategories(val, Policy.PRIORITY_CATEGORY_EVENTS), mPolicy.priorityCallSenders, mPolicy.priorityMessageSenders, @@ -98,7 +98,7 @@ public class ZenModePrioritySettings extends ZenModeSettingsBase implements Inde final boolean allowMessages = val != SOURCE_NONE; final int allowMessagesFrom = val == SOURCE_NONE ? mPolicy.priorityMessageSenders : val; - MetricsLogger.action(mContext, MetricsEvent.ACTION_ZEN_ALLOW_MESSAGES, val); + mMetricsFeatureProvider.action(mContext, MetricsEvent.ACTION_ZEN_ALLOW_MESSAGES, val); if (DEBUG) Log.d(TAG, "onPrefChange allowMessages=" + allowMessages + " allowMessagesFrom=" + ZenModeConfig.sourceToString(allowMessagesFrom)); savePolicy( @@ -118,7 +118,7 @@ public class ZenModePrioritySettings extends ZenModeSettingsBase implements Inde final int val = Integer.parseInt((String) newValue); final boolean allowCalls = val != SOURCE_NONE; final int allowCallsFrom = val == SOURCE_NONE ? mPolicy.priorityCallSenders : val; - MetricsLogger.action(mContext, MetricsEvent.ACTION_ZEN_ALLOW_CALLS, val); + mMetricsFeatureProvider.action(mContext, MetricsEvent.ACTION_ZEN_ALLOW_CALLS, val); if (DEBUG) Log.d(TAG, "onPrefChange allowCalls=" + allowCalls + " allowCallsFrom=" + ZenModeConfig.sourceToString(allowCallsFrom)); savePolicy(getNewPriorityCategories(allowCalls, Policy.PRIORITY_CATEGORY_CALLS), @@ -137,7 +137,8 @@ public class ZenModePrioritySettings extends ZenModeSettingsBase implements Inde public boolean onPreferenceChange(Preference preference, Object newValue) { if (mDisableListeners) return true; final boolean val = (Boolean) newValue; - MetricsLogger.action(mContext, MetricsEvent.ACTION_ZEN_ALLOW_REPEAT_CALLS, val); + mMetricsFeatureProvider.action(mContext, MetricsEvent.ACTION_ZEN_ALLOW_REPEAT_CALLS, + val); if (DEBUG) Log.d(TAG, "onPrefChange allowRepeatCallers=" + val); int priorityCategories = getNewPriorityCategories(val, NotificationManager.Policy.PRIORITY_CATEGORY_REPEAT_CALLERS); diff --git a/src/com/android/settings/notification/ZenModeRuleSettingsBase.java b/src/com/android/settings/notification/ZenModeRuleSettingsBase.java index d2515804f3..8ebb4dcb06 100644 --- a/src/com/android/settings/notification/ZenModeRuleSettingsBase.java +++ b/src/com/android/settings/notification/ZenModeRuleSettingsBase.java @@ -39,7 +39,6 @@ import android.view.View; import android.widget.Switch; import android.widget.Toast; -import com.android.internal.logging.MetricsLogger; import com.android.internal.logging.MetricsProto.MetricsEvent; import com.android.settings.R; import com.android.settings.SettingsActivity; @@ -163,7 +162,7 @@ public abstract class ZenModeRuleSettingsBase extends ZenModeSettingsBase if (mDisableListeners) return; final boolean enabled = isChecked; if (enabled == mRule.isEnabled()) return; - MetricsLogger.action(mContext, MetricsEvent.ACTION_ZEN_ENABLE_RULE, enabled); + mMetricsFeatureProvider.action(mContext, MetricsEvent.ACTION_ZEN_ENABLE_RULE, enabled); if (DEBUG) Log.d(TAG, "onSwitchChanged enabled=" + enabled); mRule.setEnabled(enabled); setZenRule(mId, mRule); @@ -207,7 +206,7 @@ public abstract class ZenModeRuleSettingsBase extends ZenModeSettingsBase public boolean onOptionsItemSelected(MenuItem item) { if (DEBUG) Log.d(TAG, "onOptionsItemSelected " + item.getItemId()); if (item.getItemId() == R.id.delete) { - MetricsLogger.action(mContext, MetricsEvent.ACTION_ZEN_DELETE_RULE); + mMetricsFeatureProvider.action(mContext, MetricsEvent.ACTION_ZEN_DELETE_RULE); showDeleteRuleDialog(); return true; } @@ -241,7 +240,8 @@ public abstract class ZenModeRuleSettingsBase extends ZenModeSettingsBase .setPositiveButton(R.string.zen_mode_delete_rule_button, new OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { - MetricsLogger.action(mContext, MetricsEvent.ACTION_ZEN_DELETE_RULE_OK); + mMetricsFeatureProvider.action(mContext, + MetricsEvent.ACTION_ZEN_DELETE_RULE_OK); mDeleting = true; removeZenRule(mId); } diff --git a/src/com/android/settings/notification/ZenModeVisualInterruptionSettings.java b/src/com/android/settings/notification/ZenModeVisualInterruptionSettings.java index 35f3ab69db..016e3818af 100644 --- a/src/com/android/settings/notification/ZenModeVisualInterruptionSettings.java +++ b/src/com/android/settings/notification/ZenModeVisualInterruptionSettings.java @@ -18,23 +18,15 @@ package com.android.settings.notification; import android.app.NotificationManager; import android.app.NotificationManager.Policy; -import android.content.Context; import android.os.Bundle; -import android.provider.SearchIndexableResource; import android.support.v14.preference.SwitchPreference; import android.support.v7.preference.Preference; import android.support.v7.preference.PreferenceScreen; import android.util.Log; -import com.android.internal.logging.MetricsLogger; import com.android.internal.logging.MetricsProto.MetricsEvent; -import com.android.settings.search.BaseSearchIndexProvider; -import com.android.settings.search.Indexable; import com.android.settings.R; -import java.util.Arrays; -import java.util.List; - public class ZenModeVisualInterruptionSettings extends ZenModeSettingsBase { private static final String KEY_SCREEN_OFF = "screenOff"; @@ -64,7 +56,8 @@ public class ZenModeVisualInterruptionSettings extends ZenModeSettingsBase { public boolean onPreferenceChange(Preference preference, Object newValue) { if (mDisableListeners) return true; final boolean val = (Boolean) newValue; - MetricsLogger.action(mContext, MetricsEvent.ACTION_ZEN_ALLOW_WHEN_SCREEN_OFF, val); + mMetricsFeatureProvider.action(mContext, + MetricsEvent.ACTION_ZEN_ALLOW_WHEN_SCREEN_OFF, val); if (DEBUG) Log.d(TAG, "onPrefChange suppressWhenScreenOff=" + val); savePolicy(getNewSuppressedEffects(val, Policy.SUPPRESSED_EFFECT_SCREEN_OFF)); return true; @@ -77,7 +70,8 @@ public class ZenModeVisualInterruptionSettings extends ZenModeSettingsBase { public boolean onPreferenceChange(Preference preference, Object newValue) { if (mDisableListeners) return true; final boolean val = (Boolean) newValue; - MetricsLogger.action(mContext, MetricsEvent.ACTION_ZEN_ALLOW_WHEN_SCREEN_ON, val); + mMetricsFeatureProvider.action(mContext, + MetricsEvent.ACTION_ZEN_ALLOW_WHEN_SCREEN_ON, val); if (DEBUG) Log.d(TAG, "onPrefChange suppressWhenScreenOn=" + val); savePolicy(getNewSuppressedEffects(val, Policy.SUPPRESSED_EFFECT_SCREEN_ON)); return true; diff --git a/src/com/android/settings/support/SupportDisclaimerDialogFragment.java b/src/com/android/settings/support/SupportDisclaimerDialogFragment.java index dc2b98376b..2d9dd8b41c 100644 --- a/src/com/android/settings/support/SupportDisclaimerDialogFragment.java +++ b/src/com/android/settings/support/SupportDisclaimerDialogFragment.java @@ -32,7 +32,6 @@ import android.view.View; import android.widget.CheckBox; import android.widget.TextView; -import com.android.internal.logging.MetricsLogger; import com.android.internal.logging.MetricsProto; import com.android.settings.R; import com.android.settings.core.instrumentation.InstrumentedDialogFragment; @@ -78,7 +77,7 @@ public final class SupportDisclaimerDialogFragment extends InstrumentedDialogFra @Override public void onClick(DialogInterface dialog, int which) { if (which == Dialog.BUTTON_NEGATIVE) { - MetricsLogger.action(getContext(), + mMetricsFeatureProvider.action(getContext(), MetricsProto.MetricsEvent.ACTION_SUPPORT_DISCLAIMER_CANCEL); return; } @@ -89,7 +88,8 @@ public final class SupportDisclaimerDialogFragment extends InstrumentedDialogFra FeatureFactory.getFactory(activity).getSupportFeatureProvider(activity); supportFeatureProvider.setShouldShowDisclaimerDialog(getContext(), !doNotShow.isChecked()); final Bundle bundle = getArguments(); - MetricsLogger.action(activity, MetricsProto.MetricsEvent.ACTION_SUPPORT_DISCLAIMER_OK); + mMetricsFeatureProvider.action(activity, + MetricsProto.MetricsEvent.ACTION_SUPPORT_DISCLAIMER_OK); supportFeatureProvider.startSupport(getActivity(), bundle.getParcelable(EXTRA_ACCOUNT), bundle.getInt(EXTRA_TYPE)); } @@ -97,7 +97,7 @@ public final class SupportDisclaimerDialogFragment extends InstrumentedDialogFra @Override public void onCancel(DialogInterface dialog) { super.onCancel(dialog); - MetricsLogger.action(getContext(), + mMetricsFeatureProvider.action(getContext(), MetricsProto.MetricsEvent.ACTION_SUPPORT_DISCLAIMER_CANCEL); } diff --git a/src/com/android/settings/support/SupportPhoneDialogFragment.java b/src/com/android/settings/support/SupportPhoneDialogFragment.java index 4b2a9ce1c6..c15070b452 100644 --- a/src/com/android/settings/support/SupportPhoneDialogFragment.java +++ b/src/com/android/settings/support/SupportPhoneDialogFragment.java @@ -24,7 +24,6 @@ import android.view.LayoutInflater; import android.view.View; import android.widget.TextView; -import com.android.internal.logging.MetricsLogger; import com.android.internal.logging.MetricsProto; import com.android.settings.R; import com.android.settings.core.instrumentation.InstrumentedDialogFragment; @@ -76,7 +75,7 @@ public final class SupportPhoneDialogFragment extends InstrumentedDialogFragment .queryIntentActivities(intent, 0) .isEmpty(); if (canDial) { - MetricsLogger.action(getActivity(), + mMetricsFeatureProvider.action(getActivity(), MetricsProto.MetricsEvent.ACTION_SUPPORT_DIAL_TOLLED); getActivity().startActivity(intent); } diff --git a/src/com/android/settings/widget/SwitchBar.java b/src/com/android/settings/widget/SwitchBar.java index 240c06296b..e998e795ac 100644 --- a/src/com/android/settings/widget/SwitchBar.java +++ b/src/com/android/settings/widget/SwitchBar.java @@ -34,14 +34,15 @@ import android.widget.LinearLayout; import android.widget.Switch; import android.widget.TextView; -import com.android.internal.logging.MetricsLogger; import com.android.settings.R; +import com.android.settings.core.instrumentation.MetricsFeatureProvider; +import com.android.settings.overlay.FeatureFactory; import com.android.settingslib.RestrictedLockUtils; -import static com.android.settingslib.RestrictedLockUtils.EnforcedAdmin; - import java.util.ArrayList; +import static com.android.settingslib.RestrictedLockUtils.EnforcedAdmin; + public class SwitchBar extends LinearLayout implements CompoundButton.OnCheckedChangeListener, View.OnClickListener { @@ -55,6 +56,7 @@ public class SwitchBar extends LinearLayout implements CompoundButton.OnCheckedC void onSwitchChanged(Switch switchView, boolean isChecked); } + private MetricsFeatureProvider mMetricsFeatureProvider; private final TextAppearanceSpan mSummarySpan; private ToggleSwitch mSwitch; @@ -130,6 +132,8 @@ public class SwitchBar extends LinearLayout implements CompoundButton.OnCheckedC // Default is hide setVisibility(View.GONE); + + mMetricsFeatureProvider = FeatureFactory.getFactory(context).getMetricsFeatureProvider(); } public void setMetricsTag(String tag) { @@ -230,7 +234,7 @@ public class SwitchBar extends LinearLayout implements CompoundButton.OnCheckedC @Override public void onClick(View v) { if (mDisabledByAdmin) { - MetricsLogger.count(mContext, mMetricsTag + "/switch_bar|restricted", 1); + mMetricsFeatureProvider.count(mContext, mMetricsTag + "/switch_bar|restricted", 1); RestrictedLockUtils.sendShowAdminSupportDetailsIntent(mContext, mEnforcedAdmin); } else { final boolean isChecked = !mSwitch.isChecked(); @@ -248,7 +252,7 @@ public class SwitchBar extends LinearLayout implements CompoundButton.OnCheckedC @Override public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { if (mLoggingIntialized) { - MetricsLogger.count(mContext, mMetricsTag + "/switch_bar|" + isChecked, 1); + mMetricsFeatureProvider.count(mContext, mMetricsTag + "/switch_bar|" + isChecked, 1); } mLoggingIntialized = true; propagateChecked(isChecked); diff --git a/src/com/android/settings/wifi/WifiEnabler.java b/src/com/android/settings/wifi/WifiEnabler.java index f064050b67..4a02197ba0 100644 --- a/src/com/android/settings/wifi/WifiEnabler.java +++ b/src/com/android/settings/wifi/WifiEnabler.java @@ -32,9 +32,9 @@ import android.provider.Settings; import android.widget.Switch; import android.widget.Toast; -import com.android.internal.logging.MetricsLogger; import com.android.internal.logging.MetricsProto.MetricsEvent; import com.android.settings.R; +import com.android.settings.core.instrumentation.MetricsFeatureProvider; import com.android.settings.search.Index; import com.android.settings.widget.SwitchBar; import com.android.settingslib.RestrictedLockUtils; @@ -44,12 +44,16 @@ import com.android.settingslib.WirelessUtils; import java.util.concurrent.atomic.AtomicBoolean; public class WifiEnabler implements SwitchBar.OnSwitchChangeListener { + + private final SwitchBar mSwitchBar; + private final WifiManager mWifiManager; + private final MetricsFeatureProvider mMetricsFeatureProvider; + private Context mContext; - private SwitchBar mSwitchBar; private boolean mListeningToOnSwitchChange = false; private AtomicBoolean mConnected = new AtomicBoolean(false); - private final WifiManager mWifiManager; + private boolean mStateMachineEvent; private final IntentFilter mIntentFilter; private final BroadcastReceiver mReceiver = new BroadcastReceiver() { @@ -89,10 +93,11 @@ public class WifiEnabler implements SwitchBar.OnSwitchChangeListener { } }; - public WifiEnabler(Context context, SwitchBar switchBar) { + public WifiEnabler(Context context, SwitchBar switchBar, + MetricsFeatureProvider metricsFeatureProvider) { mContext = context; mSwitchBar = switchBar; - + mMetricsFeatureProvider = metricsFeatureProvider; mWifiManager = (WifiManager) context.getSystemService(Context.WIFI_SERVICE); mIntentFilter = new IntentFilter(WifiManager.WIFI_STATE_CHANGED_ACTION); @@ -226,7 +231,7 @@ public class WifiEnabler implements SwitchBar.OnSwitchChangeListener { if (mayDisableTethering(isChecked)) { mWifiManager.setWifiApEnabled(null, false); } - MetricsLogger.action(mContext, + mMetricsFeatureProvider.action(mContext, isChecked ? MetricsEvent.ACTION_WIFI_ON : MetricsEvent.ACTION_WIFI_OFF); if (!mWifiManager.setWifiEnabled(isChecked)) { // Error diff --git a/src/com/android/settings/wifi/WifiSettings.java b/src/com/android/settings/wifi/WifiSettings.java index 782ff13896..dacd48154c 100644 --- a/src/com/android/settings/wifi/WifiSettings.java +++ b/src/com/android/settings/wifi/WifiSettings.java @@ -57,7 +57,6 @@ import android.widget.TextView; import android.widget.TextView.BufferType; import android.widget.Toast; -import com.android.internal.logging.MetricsLogger; import com.android.internal.logging.MetricsProto.MetricsEvent; import com.android.settings.LinkifyUtils; import com.android.settings.R; @@ -308,7 +307,7 @@ public class WifiSettings extends RestrictedSettingsFragment */ /* package */ WifiEnabler createWifiEnabler() { final SettingsActivity activity = (SettingsActivity) getActivity(); - return new WifiEnabler(activity, activity.getSwitchBar()); + return new WifiEnabler(activity, activity.getSwitchBar(), mMetricsFeatureProvider); } @Override @@ -411,7 +410,7 @@ public class WifiSettings extends RestrictedSettingsFragment showDialog(WPS_PIN_DIALOG_ID); return true; case MENU_ID_SCAN: - MetricsLogger.action(getActivity(), MetricsEvent.ACTION_WIFI_FORCE_SCAN); + mMetricsFeatureProvider.action(getActivity(), MetricsEvent.ACTION_WIFI_FORCE_SCAN); mWifiTracker.forceScan(); return true; case MENU_ID_ADVANCED: @@ -847,7 +846,7 @@ public class WifiSettings extends RestrictedSettingsFragment } /* package */ void forget() { - MetricsLogger.action(getActivity(), MetricsEvent.ACTION_WIFI_FORGET); + mMetricsFeatureProvider.action(getActivity(), MetricsEvent.ACTION_WIFI_FORGET); if (!mSelectedAccessPoint.isSaved()) { if (mSelectedAccessPoint.getNetworkInfo() != null && mSelectedAccessPoint.getNetworkInfo().getState() != State.DISCONNECTED) { @@ -870,12 +869,12 @@ public class WifiSettings extends RestrictedSettingsFragment } protected void connect(final WifiConfiguration config) { - MetricsLogger.action(getActivity(), MetricsEvent.ACTION_WIFI_CONNECT); + mMetricsFeatureProvider.action(getActivity(), MetricsEvent.ACTION_WIFI_CONNECT); mWifiManager.connect(config, mConnectListener); } protected void connect(final int networkId) { - MetricsLogger.action(getActivity(), MetricsEvent.ACTION_WIFI_CONNECT); + mMetricsFeatureProvider.action(getActivity(), MetricsEvent.ACTION_WIFI_CONNECT); mWifiManager.connect(networkId, mConnectListener); } @@ -883,7 +882,7 @@ public class WifiSettings extends RestrictedSettingsFragment * Called when "add network" button is pressed. */ /* package */ void onAddNetworkPressed() { - MetricsLogger.action(getActivity(), MetricsEvent.ACTION_WIFI_ADD_NETWORK); + mMetricsFeatureProvider.action(getActivity(), MetricsEvent.ACTION_WIFI_ADD_NETWORK); // No exact access point is selected. mSelectedAccessPoint = null; showDialog(null, WifiConfigUiBase.MODE_CONNECT); |