Symptom:
After manually pull out the removable sd card or usb storage in
StorageSettings screen, it automatically moves to
PrivateVolumeSettings screen. This time, launching
PrivateVolumeSettings Activity is triggered six times and end-user
has to press back key six times to exit PrivateVolumeSettings
screen.
Root cause:
When sd card is pulled out, StorageSettings got three state change
event (UNMOUNTED, BAD_REMOVAL and onDiskDestroyed) through
StorageEventListener that triggers launching PrivateVolumeSettings
screen. In addition StorageSettings register the listener two
times, then StorageSettings receives six event in total.
Therefore, PrivateVolumeSettings screen is launched six times.
Solution:
Skip launching PrivateVolumeSettings if it's already triggered.
And removed the duplicated listener registration.
Bug: 67612903
Change-Id: Iabef51677a393977b7be29fc54aa050434213500
Comparisons changed on the intent action. Sometimes an account
preference intent does not have an action specified.
Fixes: 67075850
Test: manual - go to Settings > Users & accounts and tap an account.
Change-Id: I54cebbc983b55aa1487a122d37ccd5c79bbf519d
"Set up Wi-Fi NFC Tag" dialog cannot be scrolled and "Show password"
is not displayed when setting Font size and Display size to Largest.
To fix this issue, ScrollView should be added.
Fixes: 66936807
Test: manual - long tap a connected Wi-Fi AP and
tap "Write to NFC tag".
Change-Id: I3edcf3c2b9db47319e18405066bcb835b064b690
core-oj is part of the default java libraries and should not be
explicitly included by a package.
Test: m -j checkbuild
Change-Id: Idccd326ebbbfb9121ce556037e79c173bfd08580
When switching to a secondary user, Settings will disable all extra
categories that aren't configured in SETTINGS_FOR_RESTRICTED.
As the result, Default apps settings disappear.
To fix this issue, AdvancedAppsActivity class of Default apps settings
should be added to SETTINGS_FOR_RESTRICTED.
Fixes: 65616610
Test: manual - switch to a secondary user
and go to Settings > Apps & notifications.
Change-Id: Ie9f3b1d215e2e43bf25b8dd2971f86bd60e94d04
Enter into the fingerprint list screen and can authenticate fingerprint still when the list is empty.
Test: manual - enrolling some fingerprints and remove all fingerprintd, touch the fingerprint touch panel and no response.
Display "IMS registration state" in Status menu. Introduce carrier
config to enable/disable the feature for customization. Since some
carriers require, this feature is necessary.
Test: manual Checked "IMS registration state" in Status menu
Bug: 28806101
Merged-In: I6c452c512f03cf41704b91331e44141ed3050cf9
Change-Id: I6c452c512f03cf41704b91331e44141ed3050cf9
Display "IMS registration state" in Status menu. Introduce carrier
config to enable/disable the feature for customization. Since some
carriers require, this feature is necessary.
Test: manual Checked "IMS registration state" in Status menu
Bug: 28806101
Merged-In: I6c452c512f03cf41704b91331e44141ed3050cf9
Change-Id: I6c452c512f03cf41704b91331e44141ed3050cf9
[Cause of Defect]
TrustedCredentialsSettings#mKeyChainConnectionByProfileId is get/set by
more than one thread. Main thread would set it in onDestroy method, and
AsyncTask would get and set in the doInBackground method. So
mKeyChainConnectionByProfileId.get(profileId) would get null after
onDestroy method get called.
Bug: N/A
Test: Debugger to simulate concurrency
Change-Id: I0664d1e9b88b079855354ce0e6fe014a98a22327
Signed-off-by: daqi <daqi@xiaomi.com>
Enter into the fingerprint list screen and delete and identification of operation at the same time, when the item of the fingerprint verification was deleted, highlighting the item to be deleted, just so NullPointerException occurred.
Test: manual - enrolling a fingerprint and do above steps.
Fixes:
packages/apps/Settings/tests/robotests/src/com/android/settings/language/LanguageAndInputSettingsTest.java:95: error: [MockitoCast] A bug in Mockito will cause this test to fail at runtime with a ClassCastException
when(mContext.getSystemService(AutofillManager.class)).thenReturn(mAutofillManager);
^
(see http://errorprone.info/bugpattern/MockitoCast)
Did you mean 'when((Object) mContext.getSystemService(AutofillManager.class)).thenReturn(mAutofillManager);'?
packages/apps/Settings/tests/robotests/src/com/android/settings/search/IntentSearchViewHolderTest.java:195: error: [JUnit4TestNotRun] Test method will not be run; please add @Test annotation
public void testBindViewElements_appSearchResult() {
^
(see http://errorprone.info/bugpattern/JUnit4TestNotRun)
Did you mean '@Test'?
Bug: 64489631
Test: m -j RUN_ERROR_PRONE=true javac-check
Merged-In: I79477f331ae447d2505a1519da09886bf07ba1a2
Merged-in: I333372699b263d02cc4083289dc746c7aacd414d
Change-Id: I8fd30fc741927de3f6527aca6d98d8851ef23794