diff options
author | Chris Wren <cwren@android.com> | 2015-03-20 10:29:14 -0400 |
---|---|---|
committer | Chris Wren <cwren@android.com> | 2015-03-27 13:39:07 -0400 |
commit | 8a963babe2e36b7a41f77b8d2598c97658196e58 (patch) | |
tree | fbd380b9b8f077915a2fc805dbf30c145d36db15 /src/com/android/settings | |
parent | 096abbf56a30775dbccba237719e9b9b84ec9050 (diff) | |
download | packages_apps_Settings-8a963babe2e36b7a41f77b8d2598c97658196e58.tar.gz packages_apps_Settings-8a963babe2e36b7a41f77b8d2598c97658196e58.tar.bz2 packages_apps_Settings-8a963babe2e36b7a41f77b8d2598c97658196e58.zip |
log visibility of views
Depends-On: I5b1dccb5d103ece3112acf38889bae16273b092f
Change-Id: I116aed2bb805f723a5bf2ec9eb94257de0b4a7b5
Diffstat (limited to 'src/com/android/settings')
116 files changed, 837 insertions, 53 deletions
diff --git a/src/com/android/settings/ApnEditor.java b/src/com/android/settings/ApnEditor.java index f587b6099..f8db3d8a5 100644 --- a/src/com/android/settings/ApnEditor.java +++ b/src/com/android/settings/ApnEditor.java @@ -38,9 +38,10 @@ import android.util.Log; import android.view.KeyEvent; import android.view.Menu; import android.view.MenuItem; +import com.android.internal.logging.MetricsLogger; -public class ApnEditor extends PreferenceActivity +public class ApnEditor extends InstrumentedPreferenceActivity implements SharedPreferences.OnSharedPreferenceChangeListener, Preference.OnPreferenceChangeListener { @@ -228,6 +229,11 @@ public class ApnEditor extends PreferenceActivity } @Override + protected int getMetricsCategory() { + return MetricsLogger.APN_EDITOR; + } + + @Override public void onResume() { super.onResume(); getPreferenceScreen().getSharedPreferences() diff --git a/src/com/android/settings/ApnSettings.java b/src/com/android/settings/ApnSettings.java index 79a38250a..68cfb60f6 100644 --- a/src/com/android/settings/ApnSettings.java +++ b/src/com/android/settings/ApnSettings.java @@ -47,6 +47,7 @@ import android.view.MenuItem; import android.widget.TextView; import android.widget.Toast; +import com.android.internal.logging.MetricsLogger; import com.android.internal.telephony.PhoneConstants; import com.android.internal.telephony.TelephonyIntents; import android.telephony.TelephonyManager; @@ -125,6 +126,11 @@ public class ApnSettings extends SettingsPreferenceFragment implements } @Override + protected int getMetricsCategory() { + return MetricsLogger.APN; + } + + @Override public void onCreate(Bundle icicle) { super.onCreate(icicle); final Activity activity = getActivity(); diff --git a/src/com/android/settings/ApplicationSettings.java b/src/com/android/settings/ApplicationSettings.java index 6a170499b..9e010b6a0 100644 --- a/src/com/android/settings/ApplicationSettings.java +++ b/src/com/android/settings/ApplicationSettings.java @@ -24,6 +24,7 @@ import android.preference.Preference; import android.preference.Preference.OnPreferenceChangeListener; import android.preference.PreferenceScreen; import android.provider.Settings; +import com.android.internal.logging.MetricsLogger; public class ApplicationSettings extends SettingsPreferenceFragment { @@ -43,6 +44,11 @@ public class ApplicationSettings extends SettingsPreferenceFragment { private ListPreference mInstallLocation; @Override + protected int getMetricsCategory() { + return MetricsLogger.APPLICATION; + } + + @Override public void onCreate(Bundle icicle) { super.onCreate(icicle); diff --git a/src/com/android/settings/ChooseLockGeneric.java b/src/com/android/settings/ChooseLockGeneric.java index b6f907e03..6d31e604f 100644 --- a/src/com/android/settings/ChooseLockGeneric.java +++ b/src/com/android/settings/ChooseLockGeneric.java @@ -42,6 +42,7 @@ import android.util.Log; import android.view.accessibility.AccessibilityManager; import android.widget.Toast; +import com.android.internal.logging.MetricsLogger; import com.android.internal.widget.LockPatternUtils; import java.util.List; @@ -113,6 +114,11 @@ public class ChooseLockGeneric extends SettingsActivity { }; @Override + protected int getMetricsCategory() { + return MetricsLogger.CHOOSE_LOCK_GENERIC; + } + + @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); diff --git a/src/com/android/settings/ChooseLockPassword.java b/src/com/android/settings/ChooseLockPassword.java index 0a0aebd6c..6d7b71d71 100644 --- a/src/com/android/settings/ChooseLockPassword.java +++ b/src/com/android/settings/ChooseLockPassword.java @@ -16,6 +16,7 @@ package com.android.settings; +import com.android.internal.logging.MetricsLogger; import com.android.internal.widget.LockPatternUtils; import com.android.internal.widget.PasswordEntryKeyboardHelper; import com.android.internal.widget.PasswordEntryKeyboardView; @@ -96,7 +97,7 @@ public class ChooseLockPassword extends SettingsActivity { setTitle(msg); } - public static class ChooseLockPasswordFragment extends Fragment + public static class ChooseLockPasswordFragment extends InstrumentedFragment implements OnClickListener, OnEditorActionListener, TextWatcher { private static final String KEY_FIRST_PIN = "first_pin"; private static final String KEY_UI_STAGE = "ui_stage"; @@ -263,6 +264,11 @@ public class ChooseLockPassword extends SettingsActivity { } @Override + protected int getMetricsCategory() { + return MetricsLogger.CHOOSE_LOCK_PASSWORD; + } + + @Override public void onResume() { super.onResume(); updateStage(mUiStage); diff --git a/src/com/android/settings/ChooseLockPattern.java b/src/com/android/settings/ChooseLockPattern.java index 634346871..1865a6b82 100644 --- a/src/com/android/settings/ChooseLockPattern.java +++ b/src/com/android/settings/ChooseLockPattern.java @@ -16,6 +16,7 @@ package com.android.settings; +import com.android.internal.logging.MetricsLogger; import com.google.android.collect.Lists; import com.android.internal.widget.LinearLayoutWithDefaultTouchRecepient; import com.android.internal.widget.LockPatternUtils; @@ -101,7 +102,7 @@ public class ChooseLockPattern extends SettingsActivity { return super.onKeyDown(keyCode, event); } - public static class ChooseLockPatternFragment extends Fragment + public static class ChooseLockPatternFragment extends InstrumentedFragment implements View.OnClickListener { public static final int CONFIRM_EXISTING_REQUEST = 55; @@ -205,6 +206,11 @@ public class ChooseLockPattern extends SettingsActivity { } }; + @Override + protected int getMetricsCategory() { + return MetricsLogger.CHOOSE_LOCK_PATTERN; + } + /** * The states of the left footer button. diff --git a/src/com/android/settings/ConfirmLockPassword.java b/src/com/android/settings/ConfirmLockPassword.java index c74e8617b..b49dc6eb0 100644 --- a/src/com/android/settings/ConfirmLockPassword.java +++ b/src/com/android/settings/ConfirmLockPassword.java @@ -17,6 +17,7 @@ package com.android.settings; import android.text.TextUtils; +import com.android.internal.logging.MetricsLogger; import com.android.internal.widget.LockPatternUtils; import com.android.internal.widget.PasswordEntryKeyboardHelper; import com.android.internal.widget.PasswordEntryKeyboardView; @@ -74,8 +75,8 @@ public class ConfirmLockPassword extends SettingsActivity { setTitle(msg); } - public static class ConfirmLockPasswordFragment extends Fragment implements OnClickListener, - OnEditorActionListener, TextWatcher { + public static class ConfirmLockPasswordFragment extends InstrumentedFragment + implements OnClickListener, OnEditorActionListener, TextWatcher { private static final String KEY_NUM_WRONG_CONFIRM_ATTEMPTS = "confirm_lock_password_fragment.key_num_wrong_confirm_attempts"; private static final long ERROR_MESSAGE_TIMEOUT = 3000; @@ -174,6 +175,11 @@ public class ConfirmLockPassword extends SettingsActivity { } @Override + protected int getMetricsCategory() { + return MetricsLogger.CONFIRM_LOCK_PASSWORD; + } + + @Override public void onResume() { // TODO Auto-generated method stub super.onResume(); diff --git a/src/com/android/settings/ConfirmLockPattern.java b/src/com/android/settings/ConfirmLockPattern.java index 87d401c31..b5d444bfe 100644 --- a/src/com/android/settings/ConfirmLockPattern.java +++ b/src/com/android/settings/ConfirmLockPattern.java @@ -16,6 +16,7 @@ package com.android.settings; +import com.android.internal.logging.MetricsLogger; import com.android.internal.widget.LockPatternUtils; import com.android.internal.widget.LockPatternView; import com.android.internal.widget.LinearLayoutWithDefaultTouchRecepient; @@ -84,7 +85,7 @@ public class ConfirmLockPattern extends SettingsActivity { return false; } - public static class ConfirmLockPatternFragment extends Fragment { + public static class ConfirmLockPatternFragment extends InstrumentedFragment { // how long we wait to clear a wrong pattern private static final int WRONG_PATTERN_CLEAR_TIMEOUT_MS = 2000; @@ -172,6 +173,11 @@ public class ConfirmLockPattern extends SettingsActivity { } @Override + protected int getMetricsCategory() { + return MetricsLogger.CONFIRM_LOCK_PATTERN; + } + + @Override public void onResume() { super.onResume(); diff --git a/src/com/android/settings/CryptKeeperConfirm.java b/src/com/android/settings/CryptKeeperConfirm.java index 4d6f26b46..77a1c4563 100644 --- a/src/com/android/settings/CryptKeeperConfirm.java +++ b/src/com/android/settings/CryptKeeperConfirm.java @@ -33,14 +33,20 @@ import android.view.View; import android.view.ViewGroup; import android.widget.Button; +import com.android.internal.logging.MetricsLogger; import com.android.internal.widget.LockPatternUtils; import java.util.Locale; -public class CryptKeeperConfirm extends Fragment { +public class CryptKeeperConfirm extends InstrumentedFragment { private static final String TAG = "CryptKeeperConfirm"; + @Override + protected int getMetricsCategory() { + return MetricsLogger.CRYPT_KEEPER_CONFIRM; + } + public static class Blank extends Activity { private Handler mHandler = new Handler(); diff --git a/src/com/android/settings/CryptKeeperSettings.java b/src/com/android/settings/CryptKeeperSettings.java index d962446da..3fb60e328 100644 --- a/src/com/android/settings/CryptKeeperSettings.java +++ b/src/com/android/settings/CryptKeeperSettings.java @@ -34,8 +34,9 @@ import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.Button; +import com.android.internal.logging.MetricsLogger; -public class CryptKeeperSettings extends Fragment { +public class CryptKeeperSettings extends InstrumentedFragment { private static final String TAG = "CryptKeeper"; private static final int KEYGUARD_REQUEST = 55; @@ -111,6 +112,11 @@ public class CryptKeeperSettings extends Fragment { } @Override + protected int getMetricsCategory() { + return MetricsLogger.CRYPT_KEEPER; + } + + @Override public void onResume() { super.onResume(); getActivity().registerReceiver(mIntentReceiver, mIntentFilter); diff --git a/src/com/android/settings/DataUsageSummary.java b/src/com/android/settings/DataUsageSummary.java index 0d21066a9..6e72ef7e8 100644 --- a/src/com/android/settings/DataUsageSummary.java +++ b/src/com/android/settings/DataUsageSummary.java @@ -127,6 +127,7 @@ import android.widget.TabHost.TabSpec; import android.widget.TabWidget; import android.widget.TextView; +import com.android.internal.logging.MetricsLogger; import com.android.internal.telephony.PhoneConstants; import com.android.settings.drawable.InsetBoundsDrawable; import com.android.settings.net.ChartData; @@ -291,6 +292,11 @@ public class DataUsageSummary extends HighlightingFragment implements Indexable private final Map<String, Boolean> mMobileDataEnabled = new HashMap<String, Boolean>(); @Override + protected int getMetricsCategory() { + return MetricsLogger.DATA_USAGE_SUMMARY; + } + + @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); final Context context = getActivity(); diff --git a/src/com/android/settings/DateTimeSettings.java b/src/com/android/settings/DateTimeSettings.java index be24ffe3f..a3926a3b0 100644 --- a/src/com/android/settings/DateTimeSettings.java +++ b/src/com/android/settings/DateTimeSettings.java @@ -41,6 +41,8 @@ import android.text.format.DateFormat; import android.view.View; import android.widget.DatePicker; import android.widget.TimePicker; +import com.android.internal.logging.MetricsLogger; + import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; @@ -75,6 +77,11 @@ public class DateTimeSettings extends SettingsPreferenceFragment private Preference mDatePref; @Override + protected int getMetricsCategory() { + return MetricsLogger.DATE_TIME; + } + + @Override public void onCreate(Bundle icicle) { super.onCreate(icicle); diff --git a/src/com/android/settings/DevelopmentSettings.java b/src/com/android/settings/DevelopmentSettings.java index 192bd5c0c..e0091e131 100644 --- a/src/com/android/settings/DevelopmentSettings.java +++ b/src/com/android/settings/DevelopmentSettings.java @@ -68,6 +68,7 @@ import android.view.accessibility.AccessibilityManager; import android.widget.Switch; import android.widget.TextView; +import com.android.internal.logging.MetricsLogger; import com.android.settings.search.BaseSearchIndexProvider; import com.android.settings.search.Indexable; import com.android.settings.widget.SwitchBar; @@ -260,6 +261,11 @@ public class DevelopmentSettings extends SettingsPreferenceFragment private boolean mUnavailable; @Override + protected int getMetricsCategory() { + return MetricsLogger.DEVELOPMENT; + } + + @Override public void onCreate(Bundle icicle) { super.onCreate(icicle); diff --git a/src/com/android/settings/DeviceInfoSettings.java b/src/com/android/settings/DeviceInfoSettings.java index 648615a8f..061b1337f 100644 --- a/src/com/android/settings/DeviceInfoSettings.java +++ b/src/com/android/settings/DeviceInfoSettings.java @@ -37,6 +37,7 @@ import android.provider.Settings; import android.text.TextUtils; import android.util.Log; import android.widget.Toast; +import com.android.internal.logging.MetricsLogger; import com.android.settings.search.BaseSearchIndexProvider; import com.android.settings.search.Index; import com.android.settings.search.Indexable; @@ -84,6 +85,11 @@ public class DeviceInfoSettings extends SettingsPreferenceFragment implements In Toast mDevHitToast; @Override + protected int getMetricsCategory() { + return MetricsLogger.DEVICEINFO; + } + + @Override public void onCreate(Bundle icicle) { super.onCreate(icicle); diff --git a/src/com/android/settings/DisplaySettings.java b/src/com/android/settings/DisplaySettings.java index 335812406..47cbcdebc 100644 --- a/src/com/android/settings/DisplaySettings.java +++ b/src/com/android/settings/DisplaySettings.java @@ -16,6 +16,7 @@ package com.android.settings; +import com.android.internal.logging.MetricsLogger; import com.android.internal.view.RotationPolicy; import com.android.settings.DropDownPreference.Callback; import com.android.settings.search.BaseSearchIndexProvider; @@ -86,6 +87,11 @@ public class DisplaySettings extends SettingsPreferenceFragment implements private SwitchPreference mAutoBrightnessPreference; @Override + protected int getMetricsCategory() { + return MetricsLogger.DISPLAY; + } + + @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); final Activity activity = getActivity(); diff --git a/src/com/android/settings/DreamSettings.java b/src/com/android/settings/DreamSettings.java index 38cba7a22..8137cd416 100644 --- a/src/com/android/settings/DreamSettings.java +++ b/src/com/android/settings/DreamSettings.java @@ -43,6 +43,7 @@ import android.widget.RadioButton; import android.widget.Switch; import android.widget.TextView; +import com.android.internal.logging.MetricsLogger; import com.android.settings.DreamBackend.DreamInfo; import com.android.settings.widget.SwitchBar; @@ -77,6 +78,11 @@ public class DreamSettings extends SettingsPreferenceFragment implements } @Override + protected int getMetricsCategory() { + return MetricsLogger.DREAM; + } + + @Override public void onCreate(Bundle icicle) { logd("onCreate(%s)", icicle); super.onCreate(icicle); diff --git a/src/com/android/settings/EncryptionInterstitial.java b/src/com/android/settings/EncryptionInterstitial.java index dfbed77a7..9b6444cde 100644 --- a/src/com/android/settings/EncryptionInterstitial.java +++ b/src/com/android/settings/EncryptionInterstitial.java @@ -16,6 +16,7 @@ package com.android.settings; +import com.android.internal.logging.MetricsLogger; import com.android.internal.widget.LockPatternUtils; import com.android.settings.R; import com.android.settings.SettingsActivity; @@ -78,6 +79,11 @@ public class EncryptionInterstitial extends SettingsActivity { private boolean mPasswordRequired; @Override + protected int getMetricsCategory() { + return MetricsLogger.ENCRYPTION; + } + + @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { final int layoutId = R.layout.encryption_interstitial; diff --git a/src/com/android/settings/FingerprintEnroll.java b/src/com/android/settings/FingerprintEnroll.java index 931fb9c6f..c54272f98 100644 --- a/src/com/android/settings/FingerprintEnroll.java +++ b/src/com/android/settings/FingerprintEnroll.java @@ -43,6 +43,7 @@ import android.widget.ImageView; import android.widget.ProgressBar; import android.widget.TextView; +import com.android.internal.logging.MetricsLogger; import com.android.internal.widget.LockPatternUtils; /** @@ -81,7 +82,8 @@ public class FingerprintEnroll extends SettingsActivity { setTitle(msg); } - public static class FingerprintEnrollFragment extends Fragment implements View.OnClickListener { + public static class FingerprintEnrollFragment extends InstrumentedFragment + implements View.OnClickListener { private static final String EXTRA_PROGRESS = "progress"; private static final String EXTRA_STAGE = "stage"; private static final int PROGRESS_BAR_MAX = 10000; @@ -171,6 +173,11 @@ public class FingerprintEnroll extends SettingsActivity { }; private static final boolean ALWAYS_SHOW_FIND_SCREEN = true; + @Override + protected int getMetricsCategory() { + return MetricsLogger.FINGERPRINT_ENROLL; + } + private enum Stage { EnrollingOnboard(R.string.security_settings_fingerprint_enroll_onboard_title, R.string.security_settings_fingerprint_enroll_onboard_message, diff --git a/src/com/android/settings/FingerprintSettings.java b/src/com/android/settings/FingerprintSettings.java index 857ef1fd7..d086ff718 100644 --- a/src/com/android/settings/FingerprintSettings.java +++ b/src/com/android/settings/FingerprintSettings.java @@ -40,6 +40,7 @@ import android.view.View; import android.widget.EditText; import android.widget.Toast; +import com.android.internal.logging.MetricsLogger; import com.android.settings.search.Indexable; import java.util.List; @@ -148,6 +149,11 @@ public class FingerprintSettings extends SettingsActivity { }; @Override + protected int getMetricsCategory() { + return MetricsLogger.FINGERPRINT; + } + + @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); mFingerprintManager = (FingerprintManager) getActivity().getSystemService( diff --git a/src/com/android/settings/HighlightingFragment.java b/src/com/android/settings/HighlightingFragment.java index 4a233b422..ef2fbf310 100644 --- a/src/com/android/settings/HighlightingFragment.java +++ b/src/com/android/settings/HighlightingFragment.java @@ -23,7 +23,7 @@ import android.text.TextUtils; import android.view.View; import android.view.ViewGroup; -public class HighlightingFragment extends Fragment { +public abstract class HighlightingFragment extends InstrumentedFragment { private static final String TAG = "HighlightSettingsFragment"; diff --git a/src/com/android/settings/HomeSettings.java b/src/com/android/settings/HomeSettings.java index 6da18489a..22d4cdc2f 100644 --- a/src/com/android/settings/HomeSettings.java +++ b/src/com/android/settings/HomeSettings.java @@ -51,6 +51,7 @@ import android.view.View; import android.view.View.OnClickListener; import android.widget.ImageView; import android.widget.RadioButton; +import com.android.internal.logging.MetricsLogger; import com.android.settings.search.BaseSearchIndexProvider; import com.android.settings.search.Index; import com.android.settings.search.Indexable; @@ -253,6 +254,11 @@ public class HomeSettings extends SettingsPreferenceFragment implements Indexabl } @Override + protected int getMetricsCategory() { + return MetricsLogger.HOME; + } + + @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); addPreferencesFromResource(R.xml.home_selection); diff --git a/src/com/android/settings/IccLockSettings.java b/src/com/android/settings/IccLockSettings.java index efc5a3c88..0e47afbab 100644 --- a/src/com/android/settings/IccLockSettings.java +++ b/src/com/android/settings/IccLockSettings.java @@ -42,6 +42,7 @@ import android.widget.TabHost.TabSpec; import android.widget.TabWidget; import android.widget.Toast; +import com.android.internal.logging.MetricsLogger; import com.android.internal.telephony.Phone; import com.android.internal.telephony.PhoneFactory; import com.android.internal.telephony.TelephonyIntents; @@ -55,7 +56,7 @@ import com.android.internal.telephony.TelephonyIntents; * these operations. * */ -public class IccLockSettings extends PreferenceActivity +public class IccLockSettings extends InstrumentedPreferenceActivity implements EditPinPreference.OnPinEnteredListener { private static final String TAG = "IccLockSettings"; private static final boolean DBG = true; @@ -239,6 +240,11 @@ public class IccLockSettings extends PreferenceActivity } @Override + protected int getMetricsCategory() { + return MetricsLogger.ICC_LOCK; + } + + @Override protected void onResume() { super.onResume(); diff --git a/src/com/android/settings/InstrumentedFragment.java b/src/com/android/settings/InstrumentedFragment.java new file mode 100644 index 000000000..96b7296b1 --- /dev/null +++ b/src/com/android/settings/InstrumentedFragment.java @@ -0,0 +1,39 @@ +/* + * Copyright (C) 2015 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.settings; + +import android.preference.PreferenceFragment; +import com.android.internal.logging.MetricsLogger; + +/** + * Instrumented fragment that logs visibility state. + */ +public abstract class InstrumentedFragment extends PreferenceFragment { + protected abstract int getMetricsCategory(); + + @Override + public void onResume() { + super.onResume(); + MetricsLogger.visible(getActivity(), getMetricsCategory()); + } + + @Override + public void onPause() { + super.onPause(); + MetricsLogger.hidden(getActivity(), getMetricsCategory()); + } +} diff --git a/src/com/android/settings/InstrumentedPreferenceActivity.java b/src/com/android/settings/InstrumentedPreferenceActivity.java new file mode 100644 index 000000000..8ad88b0dd --- /dev/null +++ b/src/com/android/settings/InstrumentedPreferenceActivity.java @@ -0,0 +1,39 @@ +/* + * Copyright (C) 2015 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.settings; + +import android.preference.PreferenceActivity; +import com.android.internal.logging.MetricsLogger; + +/** + * Instrumented activity that logs visibility state. + */ +public abstract class InstrumentedPreferenceActivity extends PreferenceActivity { + protected abstract int getMetricsCategory(); + + @Override + protected void onResume() { + super.onResume(); + MetricsLogger.visible(this, getMetricsCategory()); + } + + @Override + protected void onPause() { + super.onPause(); + MetricsLogger.hidden(this, getMetricsCategory()); + } +} diff --git a/src/com/android/settings/InstrumentedPreferenceFragment.java b/src/com/android/settings/InstrumentedPreferenceFragment.java new file mode 100644 index 000000000..1d8610297 --- /dev/null +++ b/src/com/android/settings/InstrumentedPreferenceFragment.java @@ -0,0 +1,39 @@ +/* + * Copyright (C) 2015 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.settings; + +import android.preference.PreferenceFragment; +import com.android.internal.logging.MetricsLogger; + +/** + * Instrumented preference fragment that logs visibility state. + */ +public abstract class InstrumentedPreferenceFragment extends PreferenceFragment { + protected abstract int getMetricsCategory(); + + @Override + public void onResume() { + super.onResume(); + MetricsLogger.visible(getActivity(), getMetricsCategory()); + } + + @Override + public void onPause() { + super.onPause(); + MetricsLogger.hidden(getActivity(), getMetricsCategory()); + } +} diff --git a/src/com/android/settings/MasterClear.java b/src/com/android/settings/MasterClear.java index 9480f670b..1b6468fd1 100644 --- a/src/com/android/settings/MasterClear.java +++ b/src/com/android/settings/MasterClear.java @@ -41,6 +41,7 @@ import android.widget.Button; import android.widget.CheckBox; import android.widget.LinearLayout; import android.widget.TextView; +import com.android.internal.logging.MetricsLogger; import java.util.List; @@ -54,7 +55,7 @@ import java.util.List; * * This is the initial screen. */ -public class MasterClear extends Fragment { +public class MasterClear extends InstrumentedFragment { private static final String TAG = "MasterClear"; private static final int KEYGUARD_REQUEST = 55; @@ -270,4 +271,9 @@ public class MasterClear extends Fragment { establishInitialState(); return mContentView; } + + @Override + protected int getMetricsCategory() { + return MetricsLogger.MASTER_CLEAR; + } } diff --git a/src/com/android/settings/MasterClearConfirm.java b/src/com/android/settings/MasterClearConfirm.java index 3521aa314..bc3656abd 100644 --- a/src/com/android/settings/MasterClearConfirm.java +++ b/src/com/android/settings/MasterClearConfirm.java @@ -21,6 +21,7 @@ import android.content.Context; import android.content.pm.ActivityInfo; import android.os.AsyncTask; import android.service.persistentdata.PersistentDataBlockManager; +import com.android.internal.logging.MetricsLogger; import com.android.internal.os.storage.ExternalStorageFormatter; import android.app.Fragment; @@ -42,7 +43,7 @@ import android.widget.Button; * * This is the confirmation screen. */ -public class MasterClearConfirm extends Fragment { +public class MasterClearConfirm extends InstrumentedFragment { private View mContentView; private boolean mEraseSdCard; @@ -144,4 +145,9 @@ public class MasterClearConfirm extends Fragment { Bundle args = getArguments(); mEraseSdCard = args != null && args.getBoolean(MasterClear.ERASE_EXTERNAL_EXTRA); } + + @Override + protected int getMetricsCategory() { + return MetricsLogger.MASTER_CLEAR_CONFIRM; + } } diff --git a/src/com/android/settings/OwnerInfoSettings.java b/src/com/android/settings/OwnerInfoSettings.java index c1cacb998..54b7cab64 100644 --- a/src/com/android/settings/OwnerInfoSettings.java +++ b/src/com/android/settings/OwnerInfoSettings.java @@ -29,9 +29,10 @@ import android.widget.CompoundButton; import android.widget.EditText; import android.widget.CompoundButton.OnCheckedChangeListener; +import com.android.internal.logging.MetricsLogger; import com.android.internal.widget.LockPatternUtils; -public class OwnerInfoSettings extends Fragment { +public class OwnerInfoSettings extends InstrumentedFragment { public static final String EXTRA_SHOW_NICKNAME = "show_nickname"; @@ -99,6 +100,11 @@ public class OwnerInfoSettings extends Fragment { } @Override + protected int getMetricsCategory() { + return MetricsLogger.OWNER_INFO; + } + + @Override public void onPause() { super.onPause(); saveChanges(); diff --git a/src/com/android/settings/PrivacySettings.java b/src/com/android/settings/PrivacySettings.java index e15029824..4eb8a9e52 100644 --- a/src/com/android/settings/PrivacySettings.java +++ b/src/com/android/settings/PrivacySettings.java @@ -37,6 +37,7 @@ import android.provider.SearchIndexableResource; import android.provider.Settings; import android.util.Log; +import com.android.internal.logging.MetricsLogger; import com.android.settings.search.BaseSearchIndexProvider; import com.android.settings.search.Indexable; import java.util.ArrayList; @@ -70,6 +71,11 @@ public class PrivacySettings extends SettingsPreferenceFragment implements private int mDialogType; @Override + protected int getMetricsCategory() { + return MetricsLogger.PRIVACY; + } + + @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); // Don't allow any access if this is a secondary user diff --git a/src/com/android/settings/ProxySelector.java b/src/com/android/settings/ProxySelector.java index 2c4c47362..7e83f6669 100644 --- a/src/com/android/settings/ProxySelector.java +++ b/src/com/android/settings/ProxySelector.java @@ -16,6 +16,7 @@ package com.android.settings; +import com.android.internal.logging.MetricsLogger; import com.android.settings.SettingsPreferenceFragment.SettingsDialogFragment; import android.app.Activity; @@ -42,7 +43,7 @@ import android.widget.Button; import android.widget.EditText; import android.widget.TextView; -public class ProxySelector extends Fragment implements DialogCreatable { +public class ProxySelector extends InstrumentedFragment implements DialogCreatable { private static final String TAG = "ProxySelector"; EditText mHostnameField; @@ -270,4 +271,9 @@ public class ProxySelector extends Fragment implements DialogCreatable { } } }; + + @Override + protected int getMetricsCategory() { + return MetricsLogger.PROXY_SELECTOR; + } } diff --git a/src/com/android/settings/ResetNetwork.java b/src/com/android/settings/ResetNetwork.java index 990f485ba..a3376d3fd 100644 --- a/src/com/android/settings/ResetNetwork.java +++ b/src/com/android/settings/ResetNetwork.java @@ -43,6 +43,7 @@ import android.widget.LinearLayout; import android.widget.Spinner; import android.widget.TextView; +import com.android.internal.logging.MetricsLogger; import com.android.internal.telephony.PhoneConstants; import java.util.ArrayList; @@ -57,7 +58,7 @@ import java.util.List; * * This is the initial screen. */ -public class ResetNetwork extends Fragment { +public class ResetNetwork extends InstrumentedFragment { private static final String TAG = "ResetNetwork"; // Arbitrary to avoid conficts @@ -195,4 +196,9 @@ public class ResetNetwork extends Fragment { establishInitialState(); return mContentView; } + + @Override + protected int getMetricsCategory() { + return MetricsLogger.RESET_NETWORK; + } } diff --git a/src/com/android/settings/ResetNetworkConfirm.java b/src/com/android/settings/ResetNetworkConfirm.java index a67d2e67e..7c2b61368 100644 --- a/src/com/android/settings/ResetNetworkConfirm.java +++ b/src/com/android/settings/ResetNetworkConfirm.java @@ -39,6 +39,7 @@ import android.widget.Button; import android.widget.Spinner; import android.widget.Toast; +import com.android.internal.logging.MetricsLogger; import com.android.internal.net.VpnConfig; import com.android.internal.telephony.Phone; import com.android.internal.telephony.PhoneConstants; @@ -58,7 +59,7 @@ import java.util.List; * * This is the confirmation screen. */ -public class ResetNetworkConfirm extends Fragment { +public class ResetNetworkConfirm extends InstrumentedFragment { private View mContentView; private int mSubId = SubscriptionManager.INVALID_SUBSCRIPTION_ID; @@ -195,4 +196,9 @@ public class ResetNetworkConfirm extends Fragment { SubscriptionManager.INVALID_SUBSCRIPTION_ID); } } + + @Override + protected int getMetricsCategory() { + return MetricsLogger.RESET_NETWORK_CONFIRM; + } } diff --git a/src/com/android/settings/RestrictedSettingsFragment.java b/src/com/android/settings/RestrictedSettingsFragment.java index 64e1e3f51..c78d6e23e 100644 --- a/src/com/android/settings/RestrictedSettingsFragment.java +++ b/src/com/android/settings/RestrictedSettingsFragment.java @@ -37,7 +37,7 @@ import android.os.UserManager; * {@link RestrictionsManager.hasRestrictionsProvider()} returns true, pass in * {@link RESTRICT_IF_OVERRIDABLE} to the constructor instead of a restrictions key. */ -public class RestrictedSettingsFragment extends SettingsPreferenceFragment { +public abstract class RestrictedSettingsFragment extends SettingsPreferenceFragment { protected static final String RESTRICT_IF_OVERRIDABLE = "restrict_if_overridable"; diff --git a/src/com/android/settings/ScreenPinningSettings.java b/src/com/android/settings/ScreenPinningSettings.java index 3f3908890..adda01b00 100644 --- a/src/com/android/settings/ScreenPinningSettings.java +++ b/src/com/android/settings/ScreenPinningSettings.java @@ -30,6 +30,7 @@ import android.view.View; import android.view.ViewGroup; import android.widget.Switch; +import com.android.internal.logging.MetricsLogger; import com.android.internal.widget.LockPatternUtils; import com.android.settings.search.BaseSearchIndexProvider; import com.android.settings.search.Indexable; @@ -53,6 +54,11 @@ public class ScreenPinningSettings extends SettingsPreferenceFragment private LockPatternUtils mLockPatternUtils; @Override + protected int getMetricsCategory() { + return MetricsLogger.SCREEN_PINNING; + } + + @Override public void onActivityCreated(Bundle savedInstanceState) { super.onActivityCreated(savedInstanceState); diff --git a/src/com/android/settings/SecuritySettings.java b/src/com/android/settings/SecuritySettings.java index 4ca214022..df217c800 100644 --- a/src/com/android/settings/SecuritySettings.java +++ b/src/com/android/settings/SecuritySettings.java @@ -49,6 +49,7 @@ import android.telephony.SubscriptionInfo; import android.text.TextUtils; import android.util.Log; +import com.android.internal.logging.MetricsLogger; import com.android.internal.widget.LockPatternUtils; import com.android.settings.TrustAgentUtils.TrustAgentComponentInfo; import com.android.settings.search.BaseSearchIndexProvider; @@ -130,6 +131,11 @@ public class SecuritySettings extends SettingsPreferenceFragment private Intent mTrustAgentClickIntent; @Override + protected int getMetricsCategory() { + return MetricsLogger.SECURITY; + } + + @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); diff --git a/src/com/android/settings/SettingsActivity.java b/src/com/android/settings/SettingsActivity.java index eecf7a207..4794608b4 100644 --- a/src/com/android/settings/SettingsActivity.java +++ b/src/com/android/settings/SettingsActivity.java @@ -66,6 +66,7 @@ import android.view.ViewGroup; import android.widget.Button; import android.widget.SearchView; +import com.android.internal.logging.MetricsLogger; import com.android.internal.util.ArrayUtils; import com.android.internal.util.XmlUtils; import com.android.settings.accessibility.AccessibilitySettings; @@ -787,6 +788,9 @@ public class SettingsActivity extends Activity @Override public void onResume() { super.onResume(); + if (mIsShowingDashboard) { + MetricsLogger.visible(this, MetricsLogger.MAIN_SETTINGS); + } final int newHomeActivityCount = getHomeActivitiesCount(); if (newHomeActivityCount != mHomeActivitiesCount) { @@ -815,7 +819,9 @@ public class SettingsActivity extends Activity @Override public void onPause() { super.onPause(); - + if (mIsShowingDashboard) { + MetricsLogger.hidden(this, MetricsLogger.MAIN_SETTINGS); + } unregisterReceiver(mBatteryInfoReceiver); mDynamicIndexableContentMonitor.unregister(); } diff --git a/src/com/android/settings/SettingsPreferenceFragment.java b/src/com/android/settings/SettingsPreferenceFragment.java index e87f676df..bf41c8038 100644 --- a/src/com/android/settings/SettingsPreferenceFragment.java +++ b/src/com/android/settings/SettingsPreferenceFragment.java @@ -29,7 +29,6 @@ import android.graphics.drawable.Drawable; import android.os.Bundle; import android.preference.Preference; import android.preference.PreferenceActivity; -import android.preference.PreferenceFragment; import android.preference.PreferenceGroupAdapter; import android.text.TextUtils; import android.util.Log; @@ -46,7 +45,8 @@ import android.widget.ListView; /** * Base class for Settings fragments, with some helper functions and dialog management. */ -public class SettingsPreferenceFragment extends PreferenceFragment implements DialogCreatable { +public abstract class SettingsPreferenceFragment extends InstrumentedPreferenceFragment + implements DialogCreatable { private static final String TAG = "SettingsPreferenceFragment"; diff --git a/src/com/android/settings/TetherSettings.java b/src/com/android/settings/TetherSettings.java index ca1e8ec5b..125411a5c 100644 --- a/src/com/android/settings/TetherSettings.java +++ b/src/com/android/settings/TetherSettings.java @@ -44,6 +44,7 @@ import android.preference.PreferenceScreen; import android.preference.SwitchPreference; import android.widget.TextView; +import com.android.internal.logging.MetricsLogger; import com.android.settings.wifi.WifiApDialog; import com.android.settings.wifi.WifiApEnabler; import com.android.settingslib.TetherUtil; @@ -107,6 +108,11 @@ public class TetherSettings extends SettingsPreferenceFragment private boolean mUnavailable; @Override + protected int getMetricsCategory() { + return MetricsLogger.TETHER; + } + + @Override public void onCreate(Bundle icicle) { super.onCreate(icicle); diff --git a/src/com/android/settings/TrustAgentSettings.java b/src/com/android/settings/TrustAgentSettings.java index 54fef3627..1427d5f00 100644 --- a/src/com/android/settings/TrustAgentSettings.java +++ b/src/com/android/settings/TrustAgentSettings.java @@ -32,6 +32,7 @@ import android.service.trust.TrustAgentService; import android.util.ArrayMap; import android.util.ArraySet; +import com.android.internal.logging.MetricsLogger; import com.android.internal.widget.LockPatternUtils; public class TrustAgentSettings extends SettingsPreferenceFragment implements @@ -61,6 +62,11 @@ public class TrustAgentSettings extends SettingsPreferenceFragment implements } @Override + protected int getMetricsCategory() { + return MetricsLogger.TRUST_AGENT; + } + + @Override public void onCreate(Bundle icicle) { super.onCreate(icicle); addPreferencesFromResource(R.xml.trust_agent_settings); diff --git a/src/com/android/settings/TrustedCredentialsSettings.java b/src/com/android/settings/TrustedCredentialsSettings.java index 753afc795..d3935db23 100644 --- a/src/com/android/settings/TrustedCredentialsSettings.java +++ b/src/com/android/settings/TrustedCredentialsSettings.java @@ -51,6 +51,7 @@ import android.widget.Switch; import android.widget.TabHost; import android.widget.TextView; +import com.android.internal.logging.MetricsLogger; import com.android.internal.util.ParcelableString; import java.security.cert.CertificateEncodingException; @@ -60,7 +61,7 @@ import java.util.Collections; import java.util.List; import java.util.HashMap; -public class TrustedCredentialsSettings extends Fragment { +public class TrustedCredentialsSettings extends InstrumentedFragment { private static final String TAG = "TrustedCredentialsSettings"; @@ -68,6 +69,11 @@ public class TrustedCredentialsSettings extends Fragment { private static final String USER_ACTION = "com.android.settings.TRUSTED_CREDENTIALS_USER"; + @Override + protected int getMetricsCategory() { + return MetricsLogger.TRUSTED_CREDENTIALS; + } + private enum Tab { SYSTEM("system", R.string.trusted_credentials_system_tab, diff --git a/src/com/android/settings/UsageAccessSettings.java b/src/com/android/settings/UsageAccessSettings.java index 362d27f75..704c3c51b 100644 --- a/src/com/android/settings/UsageAccessSettings.java +++ b/src/com/android/settings/UsageAccessSettings.java @@ -43,6 +43,7 @@ import android.preference.SwitchPreference; import android.util.ArrayMap; import android.util.Log; import android.util.SparseArray; +import com.android.internal.logging.MetricsLogger; import java.util.List; import java.util.Collections; @@ -400,6 +401,11 @@ public class UsageAccessSettings extends SettingsPreferenceFragment implements }; @Override + protected int getMetricsCategory() { + return MetricsLogger.USAGE_ACCESS; + } + + @Override public void onCreate(Bundle icicle) { super.onCreate(icicle); diff --git a/src/com/android/settings/WallpaperTypeSettings.java b/src/com/android/settings/WallpaperTypeSettings.java index 7b2dcbf47..8c8da3130 100644 --- a/src/com/android/settings/WallpaperTypeSettings.java +++ b/src/com/android/settings/WallpaperTypeSettings.java @@ -24,6 +24,7 @@ import android.content.pm.ResolveInfo; import android.os.Bundle; import android.preference.Preference; import android.preference.PreferenceScreen; +import com.android.internal.logging.MetricsLogger; import com.android.settings.search.BaseSearchIndexProvider; import com.android.settings.search.Indexable; import com.android.settings.search.SearchIndexableRaw; @@ -34,6 +35,11 @@ import java.util.List; public class WallpaperTypeSettings extends SettingsPreferenceFragment implements Indexable { @Override + protected int getMetricsCategory() { + return MetricsLogger.WALLPAPER_TYPE; + } + + @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); diff --git a/src/com/android/settings/WifiCallingSettings.java b/src/com/android/settings/WifiCallingSettings.java index 8e2c7ed9f..0638c94f0 100644 --- a/src/com/android/settings/WifiCallingSettings.java +++ b/src/com/android/settings/WifiCallingSettings.java @@ -32,6 +32,7 @@ import android.widget.Switch; import com.android.ims.ImsConfig; import com.android.ims.ImsManager; +import com.android.internal.logging.MetricsLogger; import com.android.internal.telephony.imsphone.ImsPhone; import com.android.settings.widget.SwitchBar; @@ -136,6 +137,11 @@ public class WifiCallingSettings extends SettingsPreferenceFragment }; @Override + protected int getMetricsCategory() { + return MetricsLogger.WIFI_CALLING; + } + + @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); diff --git a/src/com/android/settings/WirelessSettings.java b/src/com/android/settings/WirelessSettings.java index d94b8a703..000aa3037 100644 --- a/src/com/android/settings/WirelessSettings.java +++ b/src/com/android/settings/WirelessSettings.java @@ -48,6 +48,7 @@ import android.text.TextUtils; import android.util.Log; import com.android.ims.ImsManager; +import com.android.internal.logging.MetricsLogger; import com.android.internal.telephony.SmsApplication; import com.android.internal.telephony.SmsApplication.SmsApplicationData; import com.android.internal.telephony.TelephonyIntents; @@ -238,6 +239,11 @@ public class WirelessSettings extends SettingsPreferenceFragment } @Override + protected int getMetricsCategory() { + return MetricsLogger.WIRELESS; + } + + @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); if (savedInstanceState != null) { diff --git a/src/com/android/settings/accessibility/AccessibilitySettings.java b/src/com/android/settings/accessibility/AccessibilitySettings.java index f0464abc8..c4b3a9660 100644 --- a/src/com/android/settings/accessibility/AccessibilitySettings.java +++ b/src/com/android/settings/accessibility/AccessibilitySettings.java @@ -43,6 +43,7 @@ import android.view.KeyCharacterMap; import android.view.KeyEvent; import android.view.accessibility.AccessibilityManager; import com.android.internal.content.PackageMonitor; +import com.android.internal.logging.MetricsLogger; import com.android.internal.view.RotationPolicy; import com.android.internal.view.RotationPolicy.RotationPolicyListener; import com.android.settings.DialogCreatable; @@ -198,6 +199,11 @@ public class AccessibilitySettings extends SettingsPreferenceFragment implements private DevicePolicyManager mDpm; @Override + protected int getMetricsCategory() { + return MetricsLogger.ACCESSIBILITY; + } + + @Override public void onCreate(Bundle icicle) { super.onCreate(icicle); addPreferencesFromResource(R.xml.accessibility_settings); diff --git a/src/com/android/settings/accessibility/CaptionPropertiesFragment.java b/src/com/android/settings/accessibility/CaptionPropertiesFragment.java index 9822fc39d..ff9c9eb16 100644 --- a/src/com/android/settings/accessibility/CaptionPropertiesFragment.java +++ b/src/com/android/settings/accessibility/CaptionPropertiesFragment.java @@ -35,6 +35,7 @@ import android.view.ViewGroup.LayoutParams; import android.view.accessibility.CaptioningManager; import android.view.accessibility.CaptioningManager.CaptionStyle; +import com.android.internal.logging.MetricsLogger; import com.android.internal.widget.SubtitleView; import com.android.settings.R; import com.android.settings.SettingsActivity; @@ -95,6 +96,11 @@ public class CaptionPropertiesFragment extends SettingsPreferenceFragment private boolean mShowingCustom; @Override + protected int getMetricsCategory() { + return MetricsLogger.ACCESSIBILITY_CAPTION_PROPERTIES; + } + + @Override public void onCreate(Bundle icicle) { super.onCreate(icicle); diff --git a/src/com/android/settings/accessibility/ToggleAccessibilityServicePreferenceFragment.java b/src/com/android/settings/accessibility/ToggleAccessibilityServicePreferenceFragment.java index 5fd2e1835..609253292 100644 --- a/src/com/android/settings/accessibility/ToggleAccessibilityServicePreferenceFragment.java +++ b/src/com/android/settings/accessibility/ToggleAccessibilityServicePreferenceFragment.java @@ -40,6 +40,7 @@ import android.widget.LinearLayout; import android.widget.TextView; import android.widget.Toast; +import com.android.internal.logging.MetricsLogger; import com.android.internal.widget.LockPatternUtils; import com.android.settings.ConfirmDeviceCredentialActivity; import com.android.settings.R; @@ -74,6 +75,11 @@ public class ToggleAccessibilityServicePreferenceFragment private int mShownDialogId; @Override + protected int getMetricsCategory() { + return MetricsLogger.ACCESSIBILITY_SERVICE; + } + + @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); mLockPatternUtils = new LockPatternUtils(getActivity()); diff --git a/src/com/android/settings/accessibility/ToggleDaltonizerPreferenceFragment.java b/src/com/android/settings/accessibility/ToggleDaltonizerPreferenceFragment.java index 1f7ecf7e4..c7ed1a18b 100644 --- a/src/com/android/settings/accessibility/ToggleDaltonizerPreferenceFragment.java +++ b/src/com/android/settings/accessibility/ToggleDaltonizerPreferenceFragment.java @@ -24,6 +24,7 @@ import android.view.View; import android.view.accessibility.AccessibilityManager; import android.widget.Switch; +import com.android.internal.logging.MetricsLogger; import com.android.settings.R; import com.android.settings.widget.SwitchBar; @@ -36,6 +37,11 @@ public class ToggleDaltonizerPreferenceFragment extends ToggleFeaturePreferenceF private ListPreference mType; @Override + protected int getMetricsCategory() { + return MetricsLogger.ACCESSIBILITY_TOGGLE_DALTONIZER; + } + + @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); diff --git a/src/com/android/settings/accessibility/ToggleGlobalGesturePreferenceFragment.java b/src/com/android/settings/accessibility/ToggleGlobalGesturePreferenceFragment.java index 7fb1625e0..740f8c6db 100644 --- a/src/com/android/settings/accessibility/ToggleGlobalGesturePreferenceFragment.java +++ b/src/com/android/settings/accessibility/ToggleGlobalGesturePreferenceFragment.java @@ -18,6 +18,7 @@ package com.android.settings.accessibility; import android.provider.Settings; +import com.android.internal.logging.MetricsLogger; import com.android.settings.widget.ToggleSwitch; import com.android.settings.widget.ToggleSwitch.OnBeforeCheckedChangeListener; @@ -42,4 +43,9 @@ public class ToggleGlobalGesturePreferenceFragment } }); } + + @Override + protected int getMetricsCategory() { + return MetricsLogger.ACCESSIBILITY_TOGGLE_GLOBAL_GESTURE; + } } diff --git a/src/com/android/settings/accessibility/ToggleScreenMagnificationPreferenceFragment.java b/src/com/android/settings/accessibility/ToggleScreenMagnificationPreferenceFragment.java index 4650c06f8..44355c66a 100644 --- a/src/com/android/settings/accessibility/ToggleScreenMagnificationPreferenceFragment.java +++ b/src/com/android/settings/accessibility/ToggleScreenMagnificationPreferenceFragment.java @@ -18,6 +18,7 @@ package com.android.settings.accessibility; import android.provider.Settings; +import com.android.internal.logging.MetricsLogger; import com.android.settings.widget.ToggleSwitch; import com.android.settings.widget.ToggleSwitch.OnBeforeCheckedChangeListener; @@ -42,4 +43,9 @@ public class ToggleScreenMagnificationPreferenceFragment } }); } + + @Override + protected int getMetricsCategory() { + return MetricsLogger.ACCESSIBILITY_TOGGLE_SCREEN_MAGNIFICATION; + } } diff --git a/src/com/android/settings/accounts/AccountPreferenceBase.java b/src/com/android/settings/accounts/AccountPreferenceBase.java index bb6087146..a34be2266 100644 --- a/src/com/android/settings/accounts/AccountPreferenceBase.java +++ b/src/com/android/settings/accounts/AccountPreferenceBase.java @@ -41,7 +41,7 @@ import com.android.settings.Utils; import java.util.ArrayList; import java.util.Date; -class AccountPreferenceBase extends SettingsPreferenceFragment +abstract class AccountPreferenceBase extends SettingsPreferenceFragment implements AuthenticatorHelper.OnAccountsUpdateListener { protected static final String TAG = "AccountSettings"; diff --git a/src/com/android/settings/accounts/AccountSettings.java b/src/com/android/settings/accounts/AccountSettings.java index 017eb86e0..1bf83f3cc 100644 --- a/src/com/android/settings/accounts/AccountSettings.java +++ b/src/com/android/settings/accounts/AccountSettings.java @@ -46,6 +46,7 @@ import android.preference.PreferenceGroup; import android.preference.PreferenceCategory; import android.preference.PreferenceScreen; +import com.android.internal.logging.MetricsLogger; import com.android.settings.R; import com.android.settings.SettingsPreferenceFragment; import com.android.settings.Utils; @@ -115,6 +116,11 @@ public class AccountSettings extends SettingsPreferenceFragment } @Override + protected int getMetricsCategory() { + return MetricsLogger.ACCOUNT; + } + + @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); mUm = (UserManager) getSystemService(Context.USER_SERVICE); diff --git a/src/com/android/settings/accounts/AccountSyncSettings.java b/src/com/android/settings/accounts/AccountSyncSettings.java index 382fa3329..2de8e4abe 100644 --- a/src/com/android/settings/accounts/AccountSyncSettings.java +++ b/src/com/android/settings/accounts/AccountSyncSettings.java @@ -16,6 +16,7 @@ package com.android.settings.accounts; +import com.android.internal.logging.MetricsLogger; import com.google.android.collect.Lists; import android.accounts.Account; @@ -141,6 +142,11 @@ public class AccountSyncSettings extends AccountPreferenceBase { } @Override + protected int getMetricsCategory() { + return MetricsLogger.ACCOUNTS_ACCOUNT_SYNC; + } + + @Override public void onCreate(Bundle icicle) { super.onCreate(icicle); diff --git a/src/com/android/settings/accounts/ChooseAccountActivity.java b/src/com/android/settings/accounts/ChooseAccountActivity.java index 5e7e81e16..c4dace8d1 100644 --- a/src/com/android/settings/accounts/ChooseAccountActivity.java +++ b/src/com/android/settings/accounts/ChooseAccountActivity.java @@ -34,7 +34,9 @@ import android.preference.PreferenceGroup; import android.preference.PreferenceScreen; import android.util.Log; +import com.android.internal.logging.MetricsLogger; import com.android.internal.util.CharSequences; +import com.android.settings.InstrumentedPreferenceActivity; import com.android.settings.R; import com.android.settings.Utils; @@ -54,7 +56,7 @@ import static android.content.Intent.EXTRA_USER; * An extra {@link UserHandle} can be specified in the intent as {@link EXTRA_USER}, if the user for * which the action needs to be performed is different to the one the Settings App will run in. */ -public class ChooseAccountActivity extends PreferenceActivity { +public class ChooseAccountActivity extends InstrumentedPreferenceActivity { private static final String TAG = "ChooseAccountActivity"; private String[] mAuthorities; @@ -89,6 +91,11 @@ public class ChooseAccountActivity extends PreferenceActivity { } @Override + protected int getMetricsCategory() { + return MetricsLogger.ACCOUNTS_CHOOSE_ACCOUNT_ACTIVITY; + } + + @Override protected void onCreate(Bundle icicle) { super.onCreate(icicle); diff --git a/src/com/android/settings/accounts/ManageAccountsSettings.java b/src/com/android/settings/accounts/ManageAccountsSettings.java index 85ecd90a2..bbb8c149c 100644 --- a/src/com/android/settings/accounts/ManageAccountsSettings.java +++ b/src/com/android/settings/accounts/ManageAccountsSettings.java @@ -47,6 +47,7 @@ import android.view.ViewGroup; import android.widget.ListView; import android.widget.TextView; +import com.android.internal.logging.MetricsLogger; import com.android.settings.AccountPreference; import com.android.settings.R; import com.android.settings.SettingsActivity; @@ -87,6 +88,11 @@ public class ManageAccountsSettings extends AccountPreferenceBase private Account mFirstAccount; @Override + protected int getMetricsCategory() { + return MetricsLogger.ACCOUNTS_MANAGE_ACCOUNTS; + } + + @Override public void onCreate(Bundle icicle) { super.onCreate(icicle); diff --git a/src/com/android/settings/applications/AdvancedAppSettings.java b/src/com/android/settings/applications/AdvancedAppSettings.java index 9c94525c1..28ac1d090 100644 --- a/src/com/android/settings/applications/AdvancedAppSettings.java +++ b/src/com/android/settings/applications/AdvancedAppSettings.java @@ -41,6 +41,7 @@ import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; +import com.android.internal.logging.MetricsLogger; import com.android.settings.R; import com.android.settings.SettingsPreferenceFragment; import com.android.settings.applications.ApplicationsState.AppEntry; @@ -127,6 +128,11 @@ public class AdvancedAppSettings extends SettingsPreferenceFragment implements C } @Override + protected int getMetricsCategory() { + return MetricsLogger.APPLICATIONS_ADVANCED; + } + + @Override public void onResume() { super.onResume(); mActivityResumed = true; diff --git a/src/com/android/settings/applications/AppInfoBase.java b/src/com/android/settings/applications/AppInfoBase.java index ac061768b..a7dc50082 100644 --- a/src/com/android/settings/applications/AppInfoBase.java +++ b/src/com/android/settings/applications/AppInfoBase.java @@ -35,12 +35,13 @@ import android.os.UserManager; import android.preference.PreferenceFragment; import android.util.Log; +import com.android.settings.InstrumentedPreferenceFragment; import com.android.settings.SettingsActivity; import com.android.settings.applications.ApplicationsState.AppEntry; import java.util.ArrayList; -public abstract class AppInfoBase extends PreferenceFragment +public abstract class AppInfoBase extends InstrumentedPreferenceFragment implements ApplicationsState.Callbacks { public static final String ARG_PACKAGE_NAME = "package"; diff --git a/src/com/android/settings/applications/AppLaunchSettings.java b/src/com/android/settings/applications/AppLaunchSettings.java index c31d8ad00..ffb84ef1d 100644 --- a/src/com/android/settings/applications/AppLaunchSettings.java +++ b/src/com/android/settings/applications/AppLaunchSettings.java @@ -37,6 +37,7 @@ import android.view.ViewGroup; import android.widget.Button; import android.widget.TextView; +import com.android.internal.logging.MetricsLogger; import com.android.settings.R; import com.android.settings.Utils; import com.android.settings.applications.ApplicationsState.AppEntry; @@ -187,4 +188,8 @@ public class AppLaunchSettings extends AppInfoWithHeader implements OnClickListe : R.string.launch_defaults_none); } + @Override + protected int getMetricsCategory() { + return MetricsLogger.APPLICATIONS_APP_LAUNCH; + } } diff --git a/src/com/android/settings/applications/AppOpsDetails.java b/src/com/android/settings/applications/AppOpsDetails.java index d9dec1958..88591d776 100644 --- a/src/com/android/settings/applications/AppOpsDetails.java +++ b/src/com/android/settings/applications/AppOpsDetails.java @@ -38,13 +38,15 @@ import android.widget.LinearLayout; import android.widget.Switch; import android.widget.TextView; +import com.android.internal.logging.MetricsLogger; +import com.android.settings.InstrumentedFragment; import com.android.settings.R; import com.android.settings.SettingsActivity; import com.android.settings.Utils; import java.util.List; -public class AppOpsDetails extends Fragment { +public class AppOpsDetails extends InstrumentedFragment { static final String TAG = "AppOpsDetails"; public static final String ARG_PACKAGE_NAME = "package"; @@ -192,6 +194,11 @@ public class AppOpsDetails extends Fragment { } @Override + protected int getMetricsCategory() { + return MetricsLogger.APP_OPS_DETAILS; + } + + @Override public void onResume() { super.onResume(); if (!refreshUi()) { diff --git a/src/com/android/settings/applications/AppOpsSummary.java b/src/com/android/settings/applications/AppOpsSummary.java index 382caed95..782b8fb42 100644 --- a/src/com/android/settings/applications/AppOpsSummary.java +++ b/src/com/android/settings/applications/AppOpsSummary.java @@ -28,9 +28,11 @@ import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; +import com.android.internal.logging.MetricsLogger; +import com.android.settings.InstrumentedFragment; import com.android.settings.R; -public class AppOpsSummary extends Fragment { +public class AppOpsSummary extends InstrumentedFragment { // layout inflater object used to inflate views private LayoutInflater mInflater; @@ -49,6 +51,11 @@ public class AppOpsSummary extends Fragment { int mCurPos; + @Override + protected int getMetricsCategory() { + return MetricsLogger.APP_OPS_SUMMARY; + } + class MyPagerAdapter extends FragmentPagerAdapter implements ViewPager.OnPageChangeListener { public MyPagerAdapter(FragmentManager fm) { diff --git a/src/com/android/settings/applications/AppPermissionSettings.java b/src/com/android/settings/applications/AppPermissionSettings.java index 496faf5dd..1776b3a42 100644 --- a/src/com/android/settings/applications/AppPermissionSettings.java +++ b/src/com/android/settings/applications/AppPermissionSettings.java @@ -35,6 +35,7 @@ import android.widget.LinearLayout; import android.widget.Spinner; import android.widget.TextView; +import com.android.internal.logging.MetricsLogger; import com.android.internal.telephony.ISms; import com.android.internal.telephony.SmsUsageMonitor; import com.android.settings.R; @@ -183,6 +184,11 @@ public class AppPermissionSettings extends AppInfoWithHeader { count, count); } + @Override + protected int getMetricsCategory() { + return MetricsLogger.APPLICATIONS_APP_PERMISSION; + } + private static class PremiumSmsSelectionListener implements AdapterView.OnItemSelectedListener { private final String mPackageName; private final ISms mSmsManager; diff --git a/src/com/android/settings/applications/AppStorageSettings.java b/src/com/android/settings/applications/AppStorageSettings.java index 2f65a7679..4b80fdd9d 100644 --- a/src/com/android/settings/applications/AppStorageSettings.java +++ b/src/com/android/settings/applications/AppStorageSettings.java @@ -37,6 +37,7 @@ import android.view.View.OnClickListener; import android.widget.Button; import android.widget.TextView; +import com.android.internal.logging.MetricsLogger; import com.android.settings.R; import com.android.settings.Utils; import com.android.settings.applications.ApplicationsState.AppEntry; @@ -487,6 +488,11 @@ public class AppStorageSettings extends AppInfoWithHeader return Formatter.formatFileSize(context, size); } + @Override + protected int getMetricsCategory() { + return MetricsLogger.APPLICATIONS_APP_STORAGE; + } + class ClearCacheObserver extends IPackageDataObserver.Stub { public void onRemoveCompleted(final String packageName, final boolean succeeded) { final Message msg = mHandler.obtainMessage(MSG_CLEAR_CACHE); diff --git a/src/com/android/settings/applications/InstalledAppDetails.java b/src/com/android/settings/applications/InstalledAppDetails.java index 0fffb7e8a..9f6c96953 100755 --- a/src/com/android/settings/applications/InstalledAppDetails.java +++ b/src/com/android/settings/applications/InstalledAppDetails.java @@ -56,6 +56,7 @@ import android.widget.Button; import android.widget.ImageView; import android.widget.TextView; +import com.android.internal.logging.MetricsLogger; import com.android.settings.DataUsageSummary; import com.android.settings.DataUsageSummary.AppItem; import com.android.settings.R; @@ -223,6 +224,11 @@ public class InstalledAppDetails extends AppInfoBase } @Override + protected int getMetricsCategory() { + return MetricsLogger.APPLICATIONS_INSTALLED_APP_DETAILS; + } + + @Override public void onResume() { super.onResume(); AppItem app = new AppItem(mAppEntry.info.uid); diff --git a/src/com/android/settings/applications/ManageApplications.java b/src/com/android/settings/applications/ManageApplications.java index a03496449..84b976330 100644 --- a/src/com/android/settings/applications/ManageApplications.java +++ b/src/com/android/settings/applications/ManageApplications.java @@ -52,6 +52,8 @@ import android.widget.ListView; import android.widget.Spinner; import com.android.internal.content.PackageHelper; +import com.android.internal.logging.MetricsLogger; +import com.android.settings.InstrumentedFragment; import com.android.settings.R; import com.android.settings.Settings.AllApplicationsActivity; import com.android.settings.Settings.NotificationAppListActivity; @@ -113,8 +115,8 @@ final class CanBeOnSdCardChecker { * can be launched through Settings or via the ACTION_MANAGE_PACKAGE_STORAGE * intent. */ -public class ManageApplications extends Fragment implements OnItemClickListener, - OnItemSelectedListener { +public class ManageApplications extends InstrumentedFragment + implements OnItemClickListener, OnItemSelectedListener { static final String TAG = "ManageApplications"; static final boolean DEBUG = Log.isLoggable(TAG, Log.DEBUG); @@ -320,6 +322,20 @@ public class ManageApplications extends Fragment implements OnItemClickListener, } @Override + protected int getMetricsCategory() { + switch (mListType) { + case LIST_TYPE_MAIN: + return MetricsLogger.MANAGE_APPLICATIONS; + case LIST_TYPE_ALL: + return MetricsLogger.MANAGE_APPLICATIONS_ALL; + case LIST_TYPE_NOTIFICATION: + return MetricsLogger.MANAGE_APPLICATIONS_NOTIFICATIONS; + default: + return MetricsLogger.VIEW_UNKNOWN; + } + } + + @Override public void onResume() { super.onResume(); updateView(); diff --git a/src/com/android/settings/applications/ProcessStatsDetail.java b/src/com/android/settings/applications/ProcessStatsDetail.java index f0e76d4b6..1e7cf09c0 100644 --- a/src/com/android/settings/applications/ProcessStatsDetail.java +++ b/src/com/android/settings/applications/ProcessStatsDetail.java @@ -17,7 +17,6 @@ package com.android.settings.applications; import android.app.ActivityManager; -import android.app.Fragment; import android.app.admin.DevicePolicyManager; import android.content.Context; import android.content.pm.ApplicationInfo; @@ -32,6 +31,8 @@ import android.widget.Button; import android.widget.ImageView; import android.widget.ProgressBar; import android.widget.TextView; +import com.android.internal.logging.MetricsLogger; +import com.android.settings.InstrumentedFragment; import com.android.settings.R; import com.android.settings.Utils; @@ -42,7 +43,7 @@ import java.util.HashMap; import static com.android.settings.Utils.prepareCustomPreferencesList; -public class ProcessStatsDetail extends Fragment implements Button.OnClickListener { +public class ProcessStatsDetail extends InstrumentedFragment implements Button.OnClickListener { private static final String TAG = "ProcessStatsDetail"; public static final int ACTION_FORCE_STOP = 1; @@ -98,6 +99,11 @@ public class ProcessStatsDetail extends Fragment implements Button.OnClickListen } @Override + protected int getMetricsCategory() { + return MetricsLogger.APPLICATIONS_PROCESS_STATS_DETAIL; + } + + @Override public void onResume() { super.onResume(); checkForceStop(); diff --git a/src/com/android/settings/applications/ProcessStatsMemDetail.java b/src/com/android/settings/applications/ProcessStatsMemDetail.java index ab7dbdbe4..7ae282400 100644 --- a/src/com/android/settings/applications/ProcessStatsMemDetail.java +++ b/src/com/android/settings/applications/ProcessStatsMemDetail.java @@ -16,7 +16,6 @@ package com.android.settings.applications; -import android.app.Fragment; import android.os.Bundle; import android.text.format.Formatter; import android.view.LayoutInflater; @@ -25,11 +24,13 @@ import android.view.ViewGroup; import android.widget.ProgressBar; import android.widget.TextView; import com.android.internal.app.ProcessStats; +import com.android.internal.logging.MetricsLogger; +import com.android.settings.InstrumentedFragment; import com.android.settings.R; import static com.android.settings.Utils.prepareCustomPreferencesList; -public class ProcessStatsMemDetail extends Fragment { +public class ProcessStatsMemDetail extends InstrumentedFragment { public static final String EXTRA_MEM_TIMES = "mem_times"; public static final String EXTRA_MEM_STATE_WEIGHTS = "mem_state_weights"; public static final String EXTRA_MEM_CACHED_WEIGHT = "mem_cached_weight"; @@ -84,6 +85,11 @@ public class ProcessStatsMemDetail extends Fragment { } @Override + protected int getMetricsCategory() { + return MetricsLogger.APPLICATIONS_PROCESS_STATS_MEM_DETAIL; + } + + @Override public void onPause() { super.onPause(); } diff --git a/src/com/android/settings/applications/ProcessStatsUi.java b/src/com/android/settings/applications/ProcessStatsUi.java index bf1f6669d..45e24dd5c 100644 --- a/src/com/android/settings/applications/ProcessStatsUi.java +++ b/src/com/android/settings/applications/ProcessStatsUi.java @@ -41,7 +41,9 @@ import android.view.SubMenu; import com.android.internal.app.IProcessStats; import com.android.internal.app.ProcessMap; import com.android.internal.app.ProcessStats; +import com.android.internal.logging.MetricsLogger; import com.android.internal.util.MemInfoReader; +import com.android.settings.InstrumentedPreferenceFragment; import com.android.settings.R; import com.android.settings.SettingsActivity; import com.android.settings.Utils; @@ -53,7 +55,7 @@ import java.util.Collections; import java.util.Comparator; import java.util.HashMap; -public class ProcessStatsUi extends PreferenceFragment +public class ProcessStatsUi extends InstrumentedPreferenceFragment implements LinearColorBar.OnRegionTappedListener { static final String TAG = "ProcessStatsUi"; static final boolean DEBUG = false; @@ -184,14 +186,14 @@ public class ProcessStatsUi extends PreferenceFragment } @Override - public void onResume() { - super.onResume(); - refreshStats(); + protected int getMetricsCategory() { + return MetricsLogger.APPLICATIONS_PROCESS_STATS_UI; } @Override - public void onPause() { - super.onPause(); + public void onResume() { + super.onResume(); + refreshStats(); } @Override diff --git a/src/com/android/settings/applications/RunningServiceDetails.java b/src/com/android/settings/applications/RunningServiceDetails.java index 45cad3d29..8f074fde2 100644 --- a/src/com/android/settings/applications/RunningServiceDetails.java +++ b/src/com/android/settings/applications/RunningServiceDetails.java @@ -33,6 +33,8 @@ import android.view.ViewGroup; import android.widget.Button; import android.widget.TextView; +import com.android.internal.logging.MetricsLogger; +import com.android.settings.InstrumentedFragment; import com.android.settings.R; import com.android.settings.Utils; @@ -43,7 +45,7 @@ import java.io.IOException; import java.util.ArrayList; import java.util.Collections; -public class RunningServiceDetails extends Fragment +public class RunningServiceDetails extends InstrumentedFragment implements RunningState.OnRefreshUiListener { static final String TAG = "RunningServicesDetails"; @@ -533,6 +535,11 @@ public class RunningServiceDetails extends Fragment } @Override + protected int getMetricsCategory() { + return MetricsLogger.RUNNING_SERVICE_DETAILS; + } + + @Override public void onResume() { super.onResume(); ensureData(); diff --git a/src/com/android/settings/bluetooth/BluetoothSettings.java b/src/com/android/settings/bluetooth/BluetoothSettings.java index c85e515ad..b1eed512f 100755 --- a/src/com/android/settings/bluetooth/BluetoothSettings.java +++ b/src/com/android/settings/bluetooth/BluetoothSettings.java @@ -44,6 +44,7 @@ import android.view.WindowManager; import android.widget.EditText; import android.widget.TextView; +import com.android.internal.logging.MetricsLogger; import com.android.settings.R; import com.android.settings.SettingsActivity; import com.android.settings.search.BaseSearchIndexProvider; @@ -123,6 +124,11 @@ public final class BluetoothSettings extends DeviceListPreferenceFragment implem } @Override + protected int getMetricsCategory() { + return MetricsLogger.BLUETOOTH; + } + + @Override public void onActivityCreated(Bundle savedInstanceState) { super.onActivityCreated(savedInstanceState); mInitialScanStarted = (savedInstanceState != null); // don't auto start scan after rotation diff --git a/src/com/android/settings/bluetooth/DevicePickerFragment.java b/src/com/android/settings/bluetooth/DevicePickerFragment.java index 809ca9652..944162696 100644 --- a/src/com/android/settings/bluetooth/DevicePickerFragment.java +++ b/src/com/android/settings/bluetooth/DevicePickerFragment.java @@ -29,6 +29,7 @@ import android.view.Menu; import android.view.MenuInflater; import android.view.MenuItem; +import com.android.internal.logging.MetricsLogger; import com.android.settings.R; import com.android.settingslib.bluetooth.CachedBluetoothDevice; @@ -84,6 +85,11 @@ public final class DevicePickerFragment extends DeviceListPreferenceFragment { } @Override + protected int getMetricsCategory() { + return MetricsLogger.BLUETOOTH_DEVICE_PICKER; + } + + @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); getActivity().setTitle(getString(R.string.device_picker)); diff --git a/src/com/android/settings/bluetooth/DeviceProfilesSettings.java b/src/com/android/settings/bluetooth/DeviceProfilesSettings.java index e563e6445..1df6275f2 100755 --- a/src/com/android/settings/bluetooth/DeviceProfilesSettings.java +++ b/src/com/android/settings/bluetooth/DeviceProfilesSettings.java @@ -30,6 +30,7 @@ import android.text.Html; import android.text.TextUtils; import android.util.Log; import android.widget.EditText; +import com.android.internal.logging.MetricsLogger; import com.android.settings.R; import com.android.settings.SettingsPreferenceFragment; import com.android.settingslib.bluetooth.CachedBluetoothDevice; @@ -69,6 +70,11 @@ public final class DeviceProfilesSettings extends SettingsPreferenceFragment private boolean mProfileGroupIsRemoved; @Override + protected int getMetricsCategory() { + return MetricsLogger.BLUETOOTH_DEVICE_PROFILES; + } + + @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); diff --git a/src/com/android/settings/dashboard/DashboardSummary.java b/src/com/android/settings/dashboard/DashboardSummary.java index 8a9286036..ae1b6d025 100644 --- a/src/com/android/settings/dashboard/DashboardSummary.java +++ b/src/com/android/settings/dashboard/DashboardSummary.java @@ -34,12 +34,15 @@ import android.view.ViewGroup; import android.widget.ImageView; import android.widget.TextView; + +import com.android.internal.logging.MetricsLogger; +import com.android.settings.InstrumentedFragment; import com.android.settings.R; import com.android.settings.SettingsActivity; import java.util.List; -public class DashboardSummary extends Fragment { +public class DashboardSummary extends InstrumentedFragment { private static final String LOG_TAG = "DashboardSummary"; private LayoutInflater mLayoutInflater; @@ -67,6 +70,11 @@ public class DashboardSummary extends Fragment { private HomePackageReceiver mHomePackageReceiver = new HomePackageReceiver(); @Override + protected int getMetricsCategory() { + return MetricsLogger.DASHBOARD_SUMMARY; + } + + @Override public void onResume() { super.onResume(); diff --git a/src/com/android/settings/dashboard/SearchResultsSummary.java b/src/com/android/settings/dashboard/SearchResultsSummary.java index 0a43ce9ce..af7cf4a26 100644 --- a/src/com/android/settings/dashboard/SearchResultsSummary.java +++ b/src/com/android/settings/dashboard/SearchResultsSummary.java @@ -16,7 +16,6 @@ package com.android.settings.dashboard; -import android.app.Fragment; import android.content.ComponentName; import android.content.Context; import android.content.Intent; @@ -37,6 +36,8 @@ import android.widget.ImageView; import android.widget.ListView; import android.widget.SearchView; import android.widget.TextView; +import com.android.internal.logging.MetricsLogger; +import com.android.settings.InstrumentedFragment; import com.android.settings.R; import com.android.settings.SettingsActivity; import com.android.settings.Utils; @@ -44,7 +45,7 @@ import com.android.settings.search.Index; import java.util.HashMap; -public class SearchResultsSummary extends Fragment { +public class SearchResultsSummary extends InstrumentedFragment { private static final String LOG_TAG = "SearchResultsSummary"; @@ -245,6 +246,11 @@ public class SearchResultsSummary extends Fragment { } @Override + protected int getMetricsCategory() { + return MetricsLogger.DASHBOARD_SEARCH_RESULTS; + } + + @Override public void onResume() { super.onResume(); diff --git a/src/com/android/settings/deviceinfo/ImeiInformation.java b/src/com/android/settings/deviceinfo/ImeiInformation.java index 37b6c1d19..c4f4bbbab 100644 --- a/src/com/android/settings/deviceinfo/ImeiInformation.java +++ b/src/com/android/settings/deviceinfo/ImeiInformation.java @@ -15,6 +15,7 @@ */ package com.android.settings.deviceinfo; +import com.android.internal.logging.MetricsLogger; import com.android.internal.telephony.Phone; import com.android.internal.telephony.PhoneConstants; import com.android.internal.telephony.PhoneFactory; @@ -27,9 +28,10 @@ import android.preference.PreferenceScreen; import android.telephony.SubscriptionManager; import android.telephony.TelephonyManager; import android.text.TextUtils; +import com.android.settings.InstrumentedPreferenceActivity; import com.android.settings.R; -public class ImeiInformation extends PreferenceActivity { +public class ImeiInformation extends InstrumentedPreferenceActivity { private static final String KEY_PRL_VERSION = "prl_version"; private static final String KEY_MIN_NUMBER = "min_number"; @@ -151,4 +153,8 @@ public class ImeiInformation extends PreferenceActivity { } } + @Override + protected int getMetricsCategory() { + return MetricsLogger.DEVICEINFO_IMEI_INFORMATION; + } } diff --git a/src/com/android/settings/deviceinfo/Memory.java b/src/com/android/settings/deviceinfo/Memory.java index 1958f383e..a07f7c2cc 100644 --- a/src/com/android/settings/deviceinfo/Memory.java +++ b/src/com/android/settings/deviceinfo/Memory.java @@ -47,6 +47,7 @@ import android.view.MenuInflater; import android.view.MenuItem; import android.widget.Toast; +import com.android.internal.logging.MetricsLogger; import com.android.settings.R; import com.android.settings.SettingsActivity; import com.android.settings.SettingsPreferenceFragment; @@ -85,6 +86,11 @@ public class Memory extends SettingsPreferenceFragment implements Indexable { private ArrayList<StorageVolumePreferenceCategory> mCategories = Lists.newArrayList(); @Override + protected int getMetricsCategory() { + return MetricsLogger.DEVICEINFO_MEMORY; + } + + @Override public void onCreate(Bundle icicle) { super.onCreate(icicle); diff --git a/src/com/android/settings/deviceinfo/SimStatus.java b/src/com/android/settings/deviceinfo/SimStatus.java index e50d0d926..c52f385a1 100644 --- a/src/com/android/settings/deviceinfo/SimStatus.java +++ b/src/com/android/settings/deviceinfo/SimStatus.java @@ -36,9 +36,11 @@ import android.telephony.TelephonyManager; import android.text.TextUtils; import android.util.Log; +import com.android.internal.logging.MetricsLogger; import com.android.internal.telephony.DefaultPhoneNotifier; import com.android.internal.telephony.Phone; import com.android.internal.telephony.PhoneFactory; +import com.android.settings.InstrumentedPreferenceActivity; import com.android.settings.R; import com.android.settings.Utils; @@ -65,7 +67,7 @@ import java.util.List; * # Signal Strength * */ -public class SimStatus extends PreferenceActivity { +public class SimStatus extends InstrumentedPreferenceActivity { private static final String TAG = "SimStatus"; private static final String KEY_DATA_STATE = "data_state"; @@ -170,6 +172,11 @@ public class SimStatus extends PreferenceActivity { } @Override + protected int getMetricsCategory() { + return MetricsLogger.DEVICEINFO_SIM_STATUS; + } + + @Override protected void onResume() { super.onResume(); if (mPhone != null) { diff --git a/src/com/android/settings/deviceinfo/Status.java b/src/com/android/settings/deviceinfo/Status.java index 646792cd6..a78d06cbd 100644 --- a/src/com/android/settings/deviceinfo/Status.java +++ b/src/com/android/settings/deviceinfo/Status.java @@ -41,7 +41,9 @@ import android.widget.AdapterView; import android.widget.ListAdapter; import android.widget.Toast; +import com.android.internal.logging.MetricsLogger; import com.android.internal.util.ArrayUtils; +import com.android.settings.InstrumentedPreferenceActivity; import com.android.settings.R; import com.android.settings.Utils; @@ -55,7 +57,7 @@ import java.lang.ref.WeakReference; * # XMPP/buzz/tickle status : TODO * */ -public class Status extends PreferenceActivity { +public class Status extends InstrumentedPreferenceActivity { private static final String KEY_BATTERY_STATUS = "battery_status"; private static final String KEY_BATTERY_LEVEL = "battery_level"; @@ -232,6 +234,11 @@ public class Status extends PreferenceActivity { } @Override + protected int getMetricsCategory() { + return MetricsLogger.DEVICEINFO_STATUS; + } + + @Override protected void onResume() { super.onResume(); registerReceiver(mConnectivityReceiver, mConnectivityIntentFilter, diff --git a/src/com/android/settings/deviceinfo/UsbSettings.java b/src/com/android/settings/deviceinfo/UsbSettings.java index c3b3f9616..d8a675c3a 100644 --- a/src/com/android/settings/deviceinfo/UsbSettings.java +++ b/src/com/android/settings/deviceinfo/UsbSettings.java @@ -28,6 +28,7 @@ import android.preference.Preference; import android.preference.PreferenceScreen; import android.util.Log; +import com.android.internal.logging.MetricsLogger; import com.android.settings.R; import com.android.settings.SettingsPreferenceFragment; import com.android.settings.Utils; @@ -82,6 +83,11 @@ public class UsbSettings extends SettingsPreferenceFragment { } @Override + protected int getMetricsCategory() { + return MetricsLogger.DEVICEINFO_USB; + } + + @Override public void onCreate(Bundle icicle) { super.onCreate(icicle); mUsbManager = (UsbManager)getSystemService(Context.USB_SERVICE); diff --git a/src/com/android/settings/fuelgauge/BatteryHistoryDetail.java b/src/com/android/settings/fuelgauge/BatteryHistoryDetail.java index 63e4e13e2..c97706391 100644 --- a/src/com/android/settings/fuelgauge/BatteryHistoryDetail.java +++ b/src/com/android/settings/fuelgauge/BatteryHistoryDetail.java @@ -16,7 +16,6 @@ package com.android.settings.fuelgauge; -import android.app.Fragment; import android.content.Intent; import android.os.BatteryStats; import android.os.Bundle; @@ -24,10 +23,12 @@ import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; +import com.android.internal.logging.MetricsLogger; import com.android.internal.os.BatteryStatsHelper; +import com.android.settings.InstrumentedFragment; import com.android.settings.R; -public class BatteryHistoryDetail extends Fragment { +public class BatteryHistoryDetail extends InstrumentedFragment { public static final String EXTRA_STATS = "stats"; public static final String EXTRA_BROADCAST = "broadcast"; @@ -50,4 +51,9 @@ public class BatteryHistoryDetail extends Fragment { chart.setStats(mStats, mBatteryBroadcast); return view; } + + @Override + protected int getMetricsCategory() { + return MetricsLogger.FUELGAUGE_BATTERY_HISTORY_DETAIL; + } } diff --git a/src/com/android/settings/fuelgauge/BatterySaverSettings.java b/src/com/android/settings/fuelgauge/BatterySaverSettings.java index e6b90a76b..d8a9ca022 100644 --- a/src/com/android/settings/fuelgauge/BatterySaverSettings.java +++ b/src/com/android/settings/fuelgauge/BatterySaverSettings.java @@ -34,6 +34,7 @@ import android.provider.Settings.Global; import android.util.Log; import android.widget.Switch; +import com.android.internal.logging.MetricsLogger; import com.android.settings.R; import com.android.settings.SettingsActivity; import com.android.settings.SettingsPreferenceFragment; @@ -61,6 +62,11 @@ public class BatterySaverSettings extends SettingsPreferenceFragment private PowerManager mPowerManager; @Override + protected int getMetricsCategory() { + return MetricsLogger.FUELGAUGE_BATTERY_SAVER; + } + + @Override public void onActivityCreated(Bundle savedInstanceState) { super.onActivityCreated(savedInstanceState); if (mCreated) { diff --git a/src/com/android/settings/fuelgauge/PowerUsageDetail.java b/src/com/android/settings/fuelgauge/PowerUsageDetail.java index e3c8dabfd..d7965703d 100644 --- a/src/com/android/settings/fuelgauge/PowerUsageDetail.java +++ b/src/com/android/settings/fuelgauge/PowerUsageDetail.java @@ -47,10 +47,12 @@ import android.widget.ImageView; import android.widget.ProgressBar; import android.widget.TextView; +import com.android.internal.logging.MetricsLogger; import com.android.internal.os.BatterySipper; import com.android.internal.os.BatteryStatsHelper; import com.android.internal.util.FastPrintWriter; import com.android.settings.DisplaySettings; +import com.android.settings.InstrumentedFragment; import com.android.settings.R; import com.android.settings.SettingsActivity; import com.android.settings.Utils; @@ -64,7 +66,7 @@ import java.io.PrintWriter; import java.io.StringWriter; import java.io.Writer; -public class PowerUsageDetail extends Fragment implements Button.OnClickListener { +public class PowerUsageDetail extends InstrumentedFragment implements Button.OnClickListener { // Note: Must match the sequence of the DrainType private static int[] sDrainTypeDesciptions = new int[] { @@ -345,6 +347,11 @@ public class PowerUsageDetail extends Fragment implements Button.OnClickListener } @Override + protected int getMetricsCategory() { + return MetricsLogger.FUELGAUGE_POWER_USAGE_DETAIL; + } + + @Override public void onResume() { super.onResume(); mStartTime = android.os.Process.getElapsedCpuTime(); diff --git a/src/com/android/settings/fuelgauge/PowerUsageSummary.java b/src/com/android/settings/fuelgauge/PowerUsageSummary.java index 5ee4fa058..dbc78c2d1 100644 --- a/src/com/android/settings/fuelgauge/PowerUsageSummary.java +++ b/src/com/android/settings/fuelgauge/PowerUsageSummary.java @@ -38,10 +38,12 @@ import android.view.Menu; import android.view.MenuInflater; import android.view.MenuItem; +import com.android.internal.logging.MetricsLogger; import com.android.internal.os.BatterySipper; import com.android.internal.os.BatteryStatsHelper; import com.android.internal.os.PowerProfile; import com.android.settings.HelpUtils; +import com.android.settings.InstrumentedPreferenceFragment; import com.android.settings.R; import com.android.settings.SettingsActivity; @@ -51,7 +53,7 @@ import java.util.List; * Displays a list of apps and subsystems that consume power, ordered by how much power was * consumed since the last time it was unplugged. */ -public class PowerUsageSummary extends PreferenceFragment { +public class PowerUsageSummary extends InstrumentedPreferenceFragment { private static final boolean DEBUG = false; @@ -120,6 +122,11 @@ public class PowerUsageSummary extends PreferenceFragment { } @Override + protected int getMetricsCategory() { + return MetricsLogger.FUELGAUGE_POWER_USAGE_SUMMARY; + } + + @Override public void onResume() { super.onResume(); BatteryStatsHelper.dropFile(getActivity(), BATTERY_HISTORY_FILE); diff --git a/src/com/android/settings/inputmethod/InputMethodAndLanguageSettings.java b/src/com/android/settings/inputmethod/InputMethodAndLanguageSettings.java index 20a273fed..1b2f5679a 100644 --- a/src/com/android/settings/inputmethod/InputMethodAndLanguageSettings.java +++ b/src/com/android/settings/inputmethod/InputMethodAndLanguageSettings.java @@ -51,6 +51,7 @@ import android.view.textservice.SpellCheckerInfo; import android.view.textservice.TextServicesManager; import com.android.internal.app.LocalePicker; +import com.android.internal.logging.MetricsLogger; import com.android.settings.R; import com.android.settings.Settings.KeyboardLayoutPickerActivity; import com.android.settings.SettingsActivity; @@ -104,6 +105,11 @@ public class InputMethodAndLanguageSettings extends SettingsPreferenceFragment private DevicePolicyManager mDpm; @Override + protected int getMetricsCategory() { + return MetricsLogger.INPUTMETHOD_LANGUAGE; + } + + @Override public void onCreate(Bundle icicle) { super.onCreate(icicle); diff --git a/src/com/android/settings/inputmethod/InputMethodAndSubtypeEnabler.java b/src/com/android/settings/inputmethod/InputMethodAndSubtypeEnabler.java index 146f51242..c73ccefe6 100644 --- a/src/com/android/settings/inputmethod/InputMethodAndSubtypeEnabler.java +++ b/src/com/android/settings/inputmethod/InputMethodAndSubtypeEnabler.java @@ -31,6 +31,7 @@ import android.view.inputmethod.InputMethodInfo; import android.view.inputmethod.InputMethodManager; import android.view.inputmethod.InputMethodSubtype; +import com.android.internal.logging.MetricsLogger; import com.android.settings.R; import com.android.settings.SettingsPreferenceFragment; @@ -53,6 +54,11 @@ public class InputMethodAndSubtypeEnabler extends SettingsPreferenceFragment private Collator mCollator; @Override + protected int getMetricsCategory() { + return MetricsLogger.INPUTMETHOD_SUBTYPE_ENABLER; + } + + @Override public void onCreate(final Bundle icicle) { super.onCreate(icicle); mImm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE); diff --git a/src/com/android/settings/inputmethod/KeyboardLayoutPickerFragment.java b/src/com/android/settings/inputmethod/KeyboardLayoutPickerFragment.java index 3562cb4b5..69586b925 100644 --- a/src/com/android/settings/inputmethod/KeyboardLayoutPickerFragment.java +++ b/src/com/android/settings/inputmethod/KeyboardLayoutPickerFragment.java @@ -16,6 +16,7 @@ package com.android.settings.inputmethod; +import com.android.internal.logging.MetricsLogger; import com.android.settings.SettingsPreferenceFragment; import android.content.Context; @@ -49,6 +50,11 @@ public class KeyboardLayoutPickerFragment extends SettingsPreferenceFragment public static final String EXTRA_INPUT_DEVICE_IDENTIFIER = "input_device_identifier"; @Override + protected int getMetricsCategory() { + return MetricsLogger.INPUTMETHOD_KEYBOARD; + } + + @Override public void onCreate(Bundle icicle) { super.onCreate(icicle); diff --git a/src/com/android/settings/inputmethod/SpellCheckersSettings.java b/src/com/android/settings/inputmethod/SpellCheckersSettings.java index 5a8ccea13..729fdc63a 100644 --- a/src/com/android/settings/inputmethod/SpellCheckersSettings.java +++ b/src/com/android/settings/inputmethod/SpellCheckersSettings.java @@ -30,6 +30,7 @@ import android.view.textservice.SpellCheckerSubtype; import android.view.textservice.TextServicesManager; import android.widget.Switch; +import com.android.internal.logging.MetricsLogger; import com.android.settings.R; import com.android.settings.SettingsActivity; import com.android.settings.SettingsPreferenceFragment; @@ -54,6 +55,11 @@ public class SpellCheckersSettings extends SettingsPreferenceFragment private TextServicesManager mTsm; @Override + protected int getMetricsCategory() { + return MetricsLogger.INPUTMETHOD_SPELL_CHECKERS; + } + + @Override public void onCreate(final Bundle icicle) { super.onCreate(icicle); diff --git a/src/com/android/settings/inputmethod/UserDictionaryAddWordFragment.java b/src/com/android/settings/inputmethod/UserDictionaryAddWordFragment.java index 4f231cbbf..3eb5dc6bf 100644 --- a/src/com/android/settings/inputmethod/UserDictionaryAddWordFragment.java +++ b/src/com/android/settings/inputmethod/UserDictionaryAddWordFragment.java @@ -16,7 +16,6 @@ package com.android.settings.inputmethod; -import android.app.Fragment; import android.os.Bundle; import android.view.LayoutInflater; import android.view.Menu; @@ -27,6 +26,8 @@ import android.view.ViewGroup; import android.widget.AdapterView; import android.widget.ArrayAdapter; +import com.android.internal.logging.MetricsLogger; +import com.android.settings.InstrumentedFragment; import com.android.settings.R; import com.android.settings.SettingsActivity; import com.android.settings.inputmethod.UserDictionaryAddWordContents.LocaleRenderer; @@ -40,7 +41,7 @@ import java.util.Locale; * As opposed to the UserDictionaryActivity, this is only invoked within Settings * from the UserDictionarySettings. */ -public class UserDictionaryAddWordFragment extends Fragment +public class UserDictionaryAddWordFragment extends InstrumentedFragment implements AdapterView.OnItemSelectedListener, com.android.internal.app.LocalePicker.LocaleSelectionListener { @@ -109,6 +110,11 @@ public class UserDictionaryAddWordFragment extends Fragment } @Override + protected int getMetricsCategory() { + return MetricsLogger.INPUTMETHOD_USER_DICTIONARY_ADD_WORD; + } + + @Override public void onResume() { super.onResume(); // We are being shown: display the word diff --git a/src/com/android/settings/inputmethod/UserDictionaryList.java b/src/com/android/settings/inputmethod/UserDictionaryList.java index 7439001b8..ab236148a 100644 --- a/src/com/android/settings/inputmethod/UserDictionaryList.java +++ b/src/com/android/settings/inputmethod/UserDictionaryList.java @@ -16,6 +16,7 @@ package com.android.settings.inputmethod; +import com.android.internal.logging.MetricsLogger; import com.android.settings.R; import com.android.settings.SettingsPreferenceFragment; import com.android.settings.Utils; @@ -43,6 +44,11 @@ public class UserDictionaryList extends SettingsPreferenceFragment { private String mLocale; @Override + protected int getMetricsCategory() { + return MetricsLogger.INPUTMETHOD_USER_DICTIONARY; + } + + @Override public void onCreate(Bundle icicle) { super.onCreate(icicle); setPreferenceScreen(getPreferenceManager().createPreferenceScreen(getActivity())); diff --git a/src/com/android/settings/location/LocationMode.java b/src/com/android/settings/location/LocationMode.java index 7e95cacbf..d203bc458 100644 --- a/src/com/android/settings/location/LocationMode.java +++ b/src/com/android/settings/location/LocationMode.java @@ -19,6 +19,7 @@ package com.android.settings.location; import android.preference.PreferenceScreen; import android.provider.Settings; +import com.android.internal.logging.MetricsLogger; import com.android.settings.R; /** @@ -42,6 +43,11 @@ public class LocationMode extends LocationSettingsBase private RadioButtonPreference mSensorsOnly; @Override + protected int getMetricsCategory() { + return MetricsLogger.LOCATION_MODE; + } + + @Override public void onResume() { super.onResume(); createPreferenceHierarchy(); diff --git a/src/com/android/settings/location/LocationSettings.java b/src/com/android/settings/location/LocationSettings.java index d66f91c2b..d0dde3255 100644 --- a/src/com/android/settings/location/LocationSettings.java +++ b/src/com/android/settings/location/LocationSettings.java @@ -34,6 +34,7 @@ import android.view.MenuInflater; import android.view.MenuItem; import android.widget.Switch; +import com.android.internal.logging.MetricsLogger; import com.android.settings.R; import com.android.settings.SettingsActivity; import com.android.settings.Utils; @@ -84,6 +85,11 @@ public class LocationSettings extends LocationSettingsBase private UserManager mUm; @Override + protected int getMetricsCategory() { + return MetricsLogger.LOCATION; + } + + @Override public void onActivityCreated(Bundle savedInstanceState) { super.onActivityCreated(savedInstanceState); diff --git a/src/com/android/settings/location/ScanningSettings.java b/src/com/android/settings/location/ScanningSettings.java index 364ad7bda..428701a29 100644 --- a/src/com/android/settings/location/ScanningSettings.java +++ b/src/com/android/settings/location/ScanningSettings.java @@ -21,6 +21,7 @@ import android.preference.PreferenceScreen; import android.preference.SwitchPreference; import android.provider.Settings.Global; +import com.android.internal.logging.MetricsLogger; import com.android.settings.R; import com.android.settings.SettingsPreferenceFragment; @@ -31,6 +32,11 @@ public class ScanningSettings extends SettingsPreferenceFragment { private static final String KEY_WIFI_SCAN_ALWAYS_AVAILABLE = "wifi_always_scanning"; @Override + protected int getMetricsCategory() { + return MetricsLogger.LOCATION_SCANNING; + } + + @Override public void onResume() { super.onResume(); createPreferenceHierarchy(); diff --git a/src/com/android/settings/net/DataUsageMeteredSettings.java b/src/com/android/settings/net/DataUsageMeteredSettings.java index d567c7ecd..ec1dd385e 100644 --- a/src/com/android/settings/net/DataUsageMeteredSettings.java +++ b/src/com/android/settings/net/DataUsageMeteredSettings.java @@ -34,6 +34,7 @@ import android.preference.PreferenceCategory; import android.preference.SwitchPreference; import android.telephony.TelephonyManager; +import com.android.internal.logging.MetricsLogger; import com.android.settings.R; import com.android.settings.SettingsPreferenceFragment; import com.android.settings.search.BaseSearchIndexProvider; @@ -60,6 +61,11 @@ public class DataUsageMeteredSettings extends SettingsPreferenceFragment impleme private Preference mWifiDisabled; @Override + protected int getMetricsCategory() { + return MetricsLogger.NET_DATA_USAGE_METERED; + } + + @Override public void onCreate(Bundle icicle) { super.onCreate(icicle); final Context context = getActivity(); diff --git a/src/com/android/settings/nfc/AndroidBeam.java b/src/com/android/settings/nfc/AndroidBeam.java index 20201f4b3..62675703e 100644 --- a/src/com/android/settings/nfc/AndroidBeam.java +++ b/src/com/android/settings/nfc/AndroidBeam.java @@ -27,11 +27,13 @@ import android.view.View; import android.view.ViewGroup; import android.widget.Switch; +import com.android.internal.logging.MetricsLogger; +import com.android.settings.InstrumentedFragment; import com.android.settings.R; import com.android.settings.SettingsActivity; import com.android.settings.widget.SwitchBar; -public class AndroidBeam extends Fragment +public class AndroidBeam extends InstrumentedFragment implements SwitchBar.OnSwitchChangeListener { private View mView; private NfcAdapter mNfcAdapter; @@ -98,4 +100,9 @@ public class AndroidBeam extends Fragment } mSwitchBar.setEnabled(true); } + + @Override + protected int getMetricsCategory() { + return MetricsLogger.NFC_BEAM; + } } diff --git a/src/com/android/settings/nfc/PaymentSettings.java b/src/com/android/settings/nfc/PaymentSettings.java index 02254dd1e..4f04d73a6 100644 --- a/src/com/android/settings/nfc/PaymentSettings.java +++ b/src/com/android/settings/nfc/PaymentSettings.java @@ -42,6 +42,7 @@ import android.widget.RadioButton; import android.widget.TextView; import com.android.internal.content.PackageMonitor; +import com.android.internal.logging.MetricsLogger; import com.android.settings.HelpUtils; import com.android.settings.R; import com.android.settings.SettingsPreferenceFragment; @@ -58,6 +59,11 @@ public class PaymentSettings extends SettingsPreferenceFragment implements @Override + protected int getMetricsCategory() { + return MetricsLogger.NFC_PAYMENT; + } + + @Override public void onCreate(Bundle icicle) { super.onCreate(icicle); diff --git a/src/com/android/settings/notification/AppNotificationSettings.java b/src/com/android/settings/notification/AppNotificationSettings.java index 375b855c2..db957a775 100644 --- a/src/com/android/settings/notification/AppNotificationSettings.java +++ b/src/com/android/settings/notification/AppNotificationSettings.java @@ -35,6 +35,7 @@ import android.util.ArrayMap; import android.util.Log; import android.widget.Toast; +import com.android.internal.logging.MetricsLogger; import com.android.internal.widget.LockPatternUtils; import com.android.settings.AppHeader; import com.android.settings.R; @@ -87,6 +88,11 @@ public class AppNotificationSettings extends SettingsPreferenceFragment { } @Override + protected int getMetricsCategory() { + return MetricsLogger.NOTIFICATION_APP_NOTIFICATION; + } + + @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); mContext = getActivity(); diff --git a/src/com/android/settings/notification/NotificationSettings.java b/src/com/android/settings/notification/NotificationSettings.java index 123f0ef64..ce7ba14c7 100644 --- a/src/com/android/settings/notification/NotificationSettings.java +++ b/src/com/android/settings/notification/NotificationSettings.java @@ -48,6 +48,7 @@ import android.provider.SearchIndexableResource; import android.provider.Settings; import android.util.Log; +import com.android.internal.logging.MetricsLogger; import com.android.internal.widget.LockPatternUtils; import com.android.settings.DropDownPreference; import com.android.settings.R; @@ -105,6 +106,11 @@ public class NotificationSettings extends SettingsPreferenceFragment implements private int mRingerMode = -1; @Override + protected int getMetricsCategory() { + return MetricsLogger.NOTIFICATION; + } + + @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); mContext = getActivity(); diff --git a/src/com/android/settings/notification/NotificationStation.java b/src/com/android/settings/notification/NotificationStation.java index 3f4d3df8a..a54e3dd77 100644 --- a/src/com/android/settings/notification/NotificationStation.java +++ b/src/com/android/settings/notification/NotificationStation.java @@ -46,6 +46,7 @@ import android.widget.ImageView; import android.widget.ListView; import android.widget.TextView; +import com.android.internal.logging.MetricsLogger; import com.android.settings.R; import com.android.settings.SettingsPreferenceFragment; import com.android.settings.Utils; @@ -137,6 +138,11 @@ public class NotificationStation extends SettingsPreferenceFragment { } @Override + protected int getMetricsCategory() { + return MetricsLogger.NOTIFICATION_STATION; + } + + @Override public void onActivityCreated(Bundle savedInstanceState) { logd("onActivityCreated(%s)", savedInstanceState); super.onActivityCreated(savedInstanceState); diff --git a/src/com/android/settings/notification/OtherSoundSettings.java b/src/com/android/settings/notification/OtherSoundSettings.java index 8528ec7f1..b765b3519 100644 --- a/src/com/android/settings/notification/OtherSoundSettings.java +++ b/src/com/android/settings/notification/OtherSoundSettings.java @@ -33,6 +33,7 @@ import android.provider.Settings.Global; import android.provider.Settings.System; import android.telephony.TelephonyManager; +import com.android.internal.logging.MetricsLogger; import com.android.settings.R; import com.android.settings.SettingsPreferenceFragment; import com.android.settings.Utils; @@ -166,6 +167,11 @@ public class OtherSoundSettings extends SettingsPreferenceFragment implements In private Context mContext; @Override + protected int getMetricsCategory() { + return MetricsLogger.NOTIFICATION_OTHER_SOUND; + } + + @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); diff --git a/src/com/android/settings/notification/RedactionInterstitial.java b/src/com/android/settings/notification/RedactionInterstitial.java index 2bfad1a07..a6df6eca1 100644 --- a/src/com/android/settings/notification/RedactionInterstitial.java +++ b/src/com/android/settings/notification/RedactionInterstitial.java @@ -16,6 +16,7 @@ package com.android.settings.notification; +import com.android.internal.logging.MetricsLogger; import com.android.settings.R; import com.android.settings.SettingsActivity; import com.android.settings.SettingsPreferenceFragment; @@ -59,6 +60,11 @@ public class RedactionInterstitial extends SettingsActivity { private RadioButton mHideAllButton; @Override + protected int getMetricsCategory() { + return MetricsLogger.NOTIFICATION_REDACTION; + } + + @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View view = inflater.inflate(R.layout.redaction_interstitial, container, false); diff --git a/src/com/android/settings/notification/ZenModeSettings.java b/src/com/android/settings/notification/ZenModeSettings.java index 441990b4b..c2e143a23 100644 --- a/src/com/android/settings/notification/ZenModeSettings.java +++ b/src/com/android/settings/notification/ZenModeSettings.java @@ -50,6 +50,7 @@ import android.util.SparseArray; import android.widget.ScrollView; import android.widget.TimePicker; +import com.android.internal.logging.MetricsLogger; import com.android.settings.DropDownPreference; import com.android.settings.R; import com.android.settings.SettingsPreferenceFragment; @@ -144,6 +145,11 @@ public class ZenModeSettings extends SettingsPreferenceFragment implements Index private AlertDialog mDialog; @Override + protected int getMetricsCategory() { + return MetricsLogger.NOTIFICATION_ZEN_MODE; + } + + @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); mContext = getActivity(); diff --git a/src/com/android/settings/print/PrintJobSettingsFragment.java b/src/com/android/settings/print/PrintJobSettingsFragment.java index 978e4d6b2..b16c63de3 100644 --- a/src/com/android/settings/print/PrintJobSettingsFragment.java +++ b/src/com/android/settings/print/PrintJobSettingsFragment.java @@ -32,6 +32,7 @@ import android.view.MenuInflater; import android.view.MenuItem; import android.view.View; +import com.android.internal.logging.MetricsLogger; import com.android.settings.R; import com.android.settings.SettingsPreferenceFragment; @@ -68,6 +69,11 @@ public class PrintJobSettingsFragment extends SettingsPreferenceFragment { private PrintJob mPrintJob; @Override + protected int getMetricsCategory() { + return MetricsLogger.PRINT_JOB_SETTINGS; + } + + @Override public void onCreate(Bundle icicle) { super.onCreate(icicle); diff --git a/src/com/android/settings/print/PrintServiceSettingsFragment.java b/src/com/android/settings/print/PrintServiceSettingsFragment.java index e36e92cb6..e42fddde3 100644 --- a/src/com/android/settings/print/PrintServiceSettingsFragment.java +++ b/src/com/android/settings/print/PrintServiceSettingsFragment.java @@ -59,6 +59,7 @@ import android.widget.SearchView; import android.widget.Switch; import android.widget.TextView; +import com.android.internal.logging.MetricsLogger; import com.android.settings.R; import com.android.settings.SettingsActivity; import com.android.settings.SettingsPreferenceFragment; @@ -140,6 +141,11 @@ public class PrintServiceSettingsFragment extends SettingsPreferenceFragment private SearchView mSearchView; @Override + protected int getMetricsCategory() { + return MetricsLogger.PRINT_SERVICE_SETTINGS; + } + + @Override public void onResume() { super.onResume(); mSettingsContentObserver.register(getContentResolver()); diff --git a/src/com/android/settings/print/PrintSettingsFragment.java b/src/com/android/settings/print/PrintSettingsFragment.java index 7317d7983..27ccc592c 100644 --- a/src/com/android/settings/print/PrintSettingsFragment.java +++ b/src/com/android/settings/print/PrintSettingsFragment.java @@ -57,6 +57,7 @@ import android.widget.Spinner; import android.widget.TextView; import com.android.internal.content.PackageMonitor; +import com.android.internal.logging.MetricsLogger; import com.android.settings.DialogCreatable; import com.android.settings.R; import com.android.settings.SettingsPreferenceFragment; @@ -123,6 +124,11 @@ public class PrintSettingsFragment extends SettingsPreferenceFragment private Spinner mSpinner; @Override + protected int getMetricsCategory() { + return MetricsLogger.PRINT_SETTINGS; + } + + @Override public void onCreate(Bundle icicle) { super.onCreate(icicle); addPreferencesFromResource(R.xml.print_settings); diff --git a/src/com/android/settings/sim/SimSettings.java b/src/com/android/settings/sim/SimSettings.java index 3ebc2506c..91dadbb74 100644 --- a/src/com/android/settings/sim/SimSettings.java +++ b/src/com/android/settings/sim/SimSettings.java @@ -46,6 +46,7 @@ import android.widget.Spinner; import android.widget.TextView; import android.view.ViewGroup; import android.widget.AdapterView; +import com.android.internal.logging.MetricsLogger; import com.android.settings.RestrictedSettingsFragment; import com.android.settings.Utils; import com.android.settings.search.BaseSearchIndexProvider; @@ -116,6 +117,11 @@ public class SimSettings extends RestrictedSettingsFragment implements Indexable } @Override + protected int getMetricsCategory() { + return MetricsLogger.SIM; + } + + @Override public void onCreate(final Bundle bundle) { super.onCreate(bundle); diff --git a/src/com/android/settings/tts/TextToSpeechSettings.java b/src/com/android/settings/tts/TextToSpeechSettings.java index fa61aec2c..c8a4c3df2 100644 --- a/src/com/android/settings/tts/TextToSpeechSettings.java +++ b/src/com/android/settings/tts/TextToSpeechSettings.java @@ -19,6 +19,7 @@ package com.android.settings.tts; import static android.provider.Settings.Secure.TTS_DEFAULT_RATE; import static android.provider.Settings.Secure.TTS_DEFAULT_SYNTH; +import com.android.internal.logging.MetricsLogger; import com.android.settings.R; import com.android.settings.SettingsActivity; import com.android.settings.SettingsPreferenceFragment; @@ -143,6 +144,11 @@ public class TextToSpeechSettings extends SettingsPreferenceFragment implements }; @Override + protected int getMetricsCategory() { + return MetricsLogger.TTS_TEXT_TO_SPEECH; + } + + @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); addPreferencesFromResource(R.xml.tts_settings); diff --git a/src/com/android/settings/tts/TtsEngineSettingsFragment.java b/src/com/android/settings/tts/TtsEngineSettingsFragment.java index 542de4100..691e155aa 100644 --- a/src/com/android/settings/tts/TtsEngineSettingsFragment.java +++ b/src/com/android/settings/tts/TtsEngineSettingsFragment.java @@ -33,6 +33,7 @@ import android.text.TextUtils; import android.util.Log; import android.util.Pair; +import com.android.internal.logging.MetricsLogger; import com.android.settings.R; import com.android.settings.SettingsPreferenceFragment; @@ -99,6 +100,11 @@ public class TtsEngineSettingsFragment extends SettingsPreferenceFragment implem } @Override + protected int getMetricsCategory() { + return MetricsLogger.TTS_ENGINE_SETTINGS; + } + + @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); addPreferencesFromResource(R.xml.tts_engine_settings); diff --git a/src/com/android/settings/users/AppRestrictionsFragment.java b/src/com/android/settings/users/AppRestrictionsFragment.java index 74ee6d96b..e09d6504f 100644 --- a/src/com/android/settings/users/AppRestrictionsFragment.java +++ b/src/com/android/settings/users/AppRestrictionsFragment.java @@ -56,6 +56,7 @@ import android.widget.CompoundButton; import android.widget.CompoundButton.OnCheckedChangeListener; import android.widget.Switch; +import com.android.internal.logging.MetricsLogger; import com.android.settings.R; import com.android.settings.SettingsPreferenceFragment; import com.android.settings.Utils; @@ -258,6 +259,11 @@ public class AppRestrictionsFragment extends SettingsPreferenceFragment implemen } @Override + protected int getMetricsCategory() { + return MetricsLogger.USERS_APP_RESTRICTIONS; + } + + @Override public void onSaveInstanceState(Bundle outState) { super.onSaveInstanceState(outState); outState.putInt(EXTRA_USER_ID, mUser.getIdentifier()); diff --git a/src/com/android/settings/users/UserDetailsSettings.java b/src/com/android/settings/users/UserDetailsSettings.java index d738dd639..90e5a439f 100644 --- a/src/com/android/settings/users/UserDetailsSettings.java +++ b/src/com/android/settings/users/UserDetailsSettings.java @@ -26,6 +26,7 @@ import android.os.UserManager; import android.preference.Preference; import android.preference.SwitchPreference; +import com.android.internal.logging.MetricsLogger; import com.android.settings.R; import com.android.settings.SettingsPreferenceFragment; @@ -65,6 +66,11 @@ public class UserDetailsSettings extends SettingsPreferenceFragment private Bundle mDefaultGuestRestrictions; @Override + protected int getMetricsCategory() { + return MetricsLogger.USER_DETAILS; + } + + @Override public void onCreate(Bundle icicle) { super.onCreate(icicle); diff --git a/src/com/android/settings/users/UserSettings.java b/src/com/android/settings/users/UserSettings.java index ff06b690d..6d0cc5a5f 100644 --- a/src/com/android/settings/users/UserSettings.java +++ b/src/com/android/settings/users/UserSettings.java @@ -56,6 +56,7 @@ import android.view.View; import android.view.View.OnClickListener; import android.widget.SimpleAdapter; +import com.android.internal.logging.MetricsLogger; import com.android.internal.widget.LockPatternUtils; import com.android.settings.ChooseLockGeneric; import com.android.settings.OwnerInfoSettings; @@ -179,6 +180,11 @@ public class UserSettings extends SettingsPreferenceFragment }; @Override + protected int getMetricsCategory() { + return MetricsLogger.USER; + } + + @Override public void onCreate(Bundle icicle) { super.onCreate(icicle); diff --git a/src/com/android/settings/voice/VoiceInputSettings.java b/src/com/android/settings/voice/VoiceInputSettings.java index bc299c2bf..bac297e0f 100644 --- a/src/com/android/settings/voice/VoiceInputSettings.java +++ b/src/com/android/settings/voice/VoiceInputSettings.java @@ -27,6 +27,7 @@ import android.provider.Settings; import android.service.voice.VoiceInteractionService; import android.service.voice.VoiceInteractionServiceInfo; import android.speech.RecognitionService; +import com.android.internal.logging.MetricsLogger; import com.android.settings.R; import com.android.settings.SettingsPreferenceFragment; import com.android.settings.search.BaseSearchIndexProvider; @@ -73,6 +74,11 @@ public class VoiceInputSettings extends SettingsPreferenceFragment implements private VoiceInputHelper mHelper; @Override + protected int getMetricsCategory() { + return MetricsLogger.VOICE_INPUT; + } + + @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); addPreferencesFromResource(R.xml.voice_input_settings); diff --git a/src/com/android/settings/vpn2/VpnSettings.java b/src/com/android/settings/vpn2/VpnSettings.java index c6c35468a..04853f11e 100644 --- a/src/com/android/settings/vpn2/VpnSettings.java +++ b/src/com/android/settings/vpn2/VpnSettings.java @@ -50,6 +50,7 @@ import android.widget.ListView; import android.widget.TextView; import android.widget.Toast; +import com.android.internal.logging.MetricsLogger; import com.android.internal.net.LegacyVpnInfo; import com.android.internal.net.VpnConfig; import com.android.internal.net.VpnProfile; @@ -91,6 +92,11 @@ public class VpnSettings extends SettingsPreferenceFragment implements private boolean mUnavailable; @Override + protected int getMetricsCategory() { + return MetricsLogger.VPN; + } + + @Override public void onCreate(Bundle savedState) { super.onCreate(savedState); diff --git a/src/com/android/settings/wfd/WifiDisplaySettings.java b/src/com/android/settings/wfd/WifiDisplaySettings.java index 9f3ac8267..7c5883aca 100755 --- a/src/com/android/settings/wfd/WifiDisplaySettings.java +++ b/src/com/android/settings/wfd/WifiDisplaySettings.java @@ -59,6 +59,7 @@ import android.widget.ImageView; import android.widget.TextView; import com.android.internal.app.MediaRouteDialogPresenter; +import com.android.internal.logging.MetricsLogger; import com.android.settings.R; import com.android.settings.SettingsPreferenceFragment; @@ -115,6 +116,11 @@ public final class WifiDisplaySettings extends SettingsPreferenceFragment { } @Override + protected int getMetricsCategory() { + return MetricsLogger.WFD_WIFI_DISPLAY; + } + + @Override public void onCreate(Bundle icicle) { super.onCreate(icicle); diff --git a/src/com/android/settings/wifi/AdvancedWifiSettings.java b/src/com/android/settings/wifi/AdvancedWifiSettings.java index 17fee8865..4f5884ef7 100644 --- a/src/com/android/settings/wifi/AdvancedWifiSettings.java +++ b/src/com/android/settings/wifi/AdvancedWifiSettings.java @@ -42,6 +42,7 @@ import android.text.TextUtils; import android.util.Log; import android.widget.Toast; +import com.android.internal.logging.MetricsLogger; import com.android.settings.AppListSwitchPreference; import com.android.settings.R; import com.android.settings.SettingsPreferenceFragment; @@ -81,6 +82,11 @@ public class AdvancedWifiSettings extends SettingsPreferenceFragment }; @Override + protected int getMetricsCategory() { + return MetricsLogger.WIFI_ADVANCED; + } + + @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); addPreferencesFromResource(R.xml.wifi_advanced_settings); diff --git a/src/com/android/settings/wifi/SavedAccessPointsWifiSettings.java b/src/com/android/settings/wifi/SavedAccessPointsWifiSettings.java index e92bda7ef..2627bc413 100644 --- a/src/com/android/settings/wifi/SavedAccessPointsWifiSettings.java +++ b/src/com/android/settings/wifi/SavedAccessPointsWifiSettings.java @@ -26,6 +26,7 @@ import android.preference.Preference; import android.preference.PreferenceScreen; import android.util.Log; +import com.android.internal.logging.MetricsLogger; import com.android.settings.R; import com.android.settings.SettingsPreferenceFragment; import com.android.settings.search.BaseSearchIndexProvider; @@ -54,6 +55,11 @@ public class SavedAccessPointsWifiSettings extends SettingsPreferenceFragment private static final String SAVE_DIALOG_ACCESS_POINT_STATE = "wifi_ap_state"; @Override + protected int getMetricsCategory() { + return MetricsLogger.WIFI_SAVED_ACCESS_POINTS; + } + + @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); addPreferencesFromResource(R.xml.wifi_display_saved_access_points); diff --git a/src/com/android/settings/wifi/WifiSettings.java b/src/com/android/settings/wifi/WifiSettings.java index 5c6630931..0d0462295 100644 --- a/src/com/android/settings/wifi/WifiSettings.java +++ b/src/com/android/settings/wifi/WifiSettings.java @@ -47,6 +47,7 @@ import android.widget.AdapterView.AdapterContextMenuInfo; import android.widget.TextView; import android.widget.Toast; +import com.android.internal.logging.MetricsLogger; import com.android.settings.R; import com.android.settings.RestrictedSettingsFragment; import com.android.settings.SettingsActivity; @@ -322,6 +323,11 @@ public class WifiSettings extends RestrictedSettingsFragment } @Override + protected int getMetricsCategory() { + return MetricsLogger.WIFI; + } + + @Override public void onSaveInstanceState(Bundle outState) { super.onSaveInstanceState(outState); diff --git a/src/com/android/settings/wifi/p2p/WifiP2pSettings.java b/src/com/android/settings/wifi/p2p/WifiP2pSettings.java index 879ebf835..72dca9e72 100644 --- a/src/com/android/settings/wifi/p2p/WifiP2pSettings.java +++ b/src/com/android/settings/wifi/p2p/WifiP2pSettings.java @@ -51,6 +51,7 @@ import android.view.MenuItem; import android.widget.EditText; import android.widget.Toast; +import com.android.internal.logging.MetricsLogger; import com.android.settings.R; import com.android.settings.SettingsPreferenceFragment; @@ -477,6 +478,11 @@ public class WifiP2pSettings extends SettingsPreferenceFragment } @Override + protected int getMetricsCategory() { + return MetricsLogger.WIFI_P2P; + } + + @Override public void onSaveInstanceState(Bundle outState) { if (mSelectedWifiPeer != null) { outState.putParcelable(SAVE_DIALOG_PEER, mSelectedWifiPeer.device); |