[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>
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
It is possible in certain build configurations to have an invalid
link. Instead of crashing, swallow the error and write to logs.
Fixes: 64322876
Test: manual - go to Settings > Security & Location > Fingerprint
and then tap "Learn more"
Change-Id: I70beca880261df0ee3eef94f5469f44130ffd95a
* changes:
Change empty apn type in user entered APN to non-read-only types.
Check for null mReadOnlyApnTypes.
Disallow adding/editing dun APNs unless allowed by carrier.
Test: Manually added APN and verified read-only and non-wildcardable
types are not included
Bug: 38186417
Change-Id: I07bcf1c2a950a1257446f0a7beb602fed79423b3
Adds unit test for DeviceInfoUtils.formatKernelVersion to see if it can
parse a /proc/version string from a kernel compiled with Clang/LLVM.
Bug: 32455817
Change-Id: I25123bf44f67e038e01d8c76d6eab18d5616c7c2
When WPS searching is interruptd by turning Wi-Fi off,
Error dialog should be displayed.
Bug: 29883134
Test: manual - tap WPS Push Button and turn Airplane mode on
Change-Id: Ie6667c6b7d09540af21b015e0d5b991d818d2c77
Settings app crashes when only decimal point (".") is set to
data usage warning because it is not a valid number.
To fix this issue, the decimal point should be converted to 0.
Fixes: 63787824
Test: manual - go to Settings > Data usage > Mobile data usage and then
set only decimal point to data usage warning.
Change-Id: Iefb6a035ba6f17b8e0c89f79dbd397e2356fb19c
The help string is not shown when onEnrollmentHelp() is called
between onEnrollmentProgressChange() and mTouchAgainRunnable#run().
To fix this issue, showError() should be called.
Bug: 30274453
Test: manual - start enrolling fingerprint and move finger fast on the sensor
Change-Id: Ie604532940e40cca66dc54b56c3cb4b828a07987
Bluetooth settings screen has two categories. Each category should call
removeAll() method to unregister a callback from CachedBluetoothDevice.
But the method is not called for mPairedDevicesCategory.
Bug: 30004142
Test: manual - connect to Bluetooth device and then
open and close Bluetooth settings screen repeatedly
Change-Id: I5a72994473ee2bb5fc3ad00176d9a930b4839099
When rorate screen on SimStatus, Fragment not attached to Activity, phone crash.
Solution: use mRes to getString
Test: build
07-07 13:20:27.237 696 696 E AndroidRuntime: Process: com.android.phone, PID: 696
07-07 13:20:27.237 696 696 E AndroidRuntime: java.lang.IllegalStateException: Fragment SimStatus{d1e4bb3} not attached to Activity
07-07 13:20:27.237 696 696 E AndroidRuntime: at android.app.Fragment.getResources(Fragment.java:861)
07-07 13:20:27.237 696 696 E AndroidRuntime: at com.android.settings.deviceinfo.SimStatus.updateSignalStrength(SimStatus.java:359)
07-07 13:20:27.237 696 696 E AndroidRuntime: at com.android.settings.deviceinfo.SimStatus$4.onSignalStrengthsChanged(SimStatus.java:444)
07-07 13:20:27.237 696 696 E AndroidRuntime: at android.telephony.PhoneStateListener$1.handleMessage(PhoneStateListener.java:334)
07-07 13:20:27.237 696 696 E AndroidRuntime: at android.os.Handler.dispatchMessage(Handler.java:105)
07-07 13:20:27.237 696 696 E AndroidRuntime: at android.os.Looper.loop(Looper.java:164)
07-07 13:20:27.237 696 696 E AndroidRuntime: at android.app.ActivityThread.main(ActivityThread.java:6558)
07-07 13:20:27.237 696 696 E AndroidRuntime: at java.lang.reflect.Method.invoke(Native Method)
07-07 13:20:27.237 696 696 E AndroidRuntime: at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygot
Change-Id: Ife8f2e3ed8c4fe6db0fe784a43910768ff3ff4d1
[Cause of Defect]
PremiumSmsAccess forget to invoke Session and AppStateSmsPremBridge
release method in the onDestroy callback.
And that would lead to the leak of activity context.
Test: 1. Settings - Apps - Advanced - Special access - Premium SMS access
2. adb shell dumpsys meminfo com.android.settings
3. observe activity object number
4. back to the last page
5. use AS trigger Settings gc several times
6. adb shell dumpsys meminfo com.android.settings
7. observe activity object number to check if the activity number decrease
Change-Id: I359900c16fa866fba94d187a61cf6bebbdd1ed0b
Signed-off-by: daqi <daqi@xiaomi.com>
This makes the System size more consistent because cache is not
attributed to the system (when the cache is under quota).
Change-Id: I680e70daf5e98b9a205023a218dfd1dcc8ee8334
Fixes: 62623731
Test: Settings Unit Test
This will prevent them from showing up on external devices where they
would be less than useful.
Test: connect to watch and pair a device
Bug: 34612389
Change-Id: I8b02c20200ce78a73967b8121cf7d5653b68f356
(cherry picked from commit 426903d155)