[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>
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
Test: Manually added APN and verified read-only and non-wildcardable
types are not included
Bug: 38186417
Change-Id: I07bcf1c2a950a1257446f0a7beb602fed79423b3
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)
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
- Use "what happens" descriptors instead of priority level names in summary
- Group some settings under Advanced header.
Bug: 62705435
Test: make RunSettingsRoboTests; manual verification
Merged-In: Iac31575d894d7f3532c8e631ee9d77ee21830b29
Change-Id: Iac31575d894d7f3532c8e631ee9d77ee21830b29
When invoke the method View#setLayoutParams(), ViewRootImpl
will run method ViewRootImpl#performTraversals(). And
OnGlobalLayoutListener#onGlobalLayout() will be invoked.
When the method View#setLayoutParams() is invoked in
OnGlobalLayoutListener#onGlobalLayout(), there will be recursive
call. The view will be draw on and on. This situation happen in
Screen Magnification. It should remove the listener after
work completion.
Bug: https://issuetracker.google.com/issues/62613000
Test: use systrace when enter Screen Magnification,and view the
"traversal" times.
Change-Id: I01b1fcccb8b915ec436fb95f1d30c8ec0c0de0a9
Signed-off-by: gaochong <gaochong@xiaomi.com>
Due to issues w.r.t. attribution across multiple users, we originally
duplicated the previous implementation which zeroed out the sizes. This,
however, caused system bloat due to the change in how we calculate the
system size.
By attributing apps which do not exist in the primary profile to the
first user that shows up with it installed, we can avoid accidentally
attributing it to the system size.
Bug: 62623731
Test: Settings unittest & Settings robotest
Change-Id: I9514c9ecef62ea6270723f62e6bf27c69b75f180
Test: m -j RunSettingsRoboTests
Test: Observe search result with badged icon and showing work app info
when tapping on it.
Test: personal app search result is still working
Test: Non app search result is working
Fix: 62366873
Merged-in: I333372699b263d02cc4083289dc746c7aacd414d
Change-Id: I9c87345478f8df57b151927d8097cd8fd90fbe79
If we do not have any recent scan results, show the previous APs from
when the app was last paused, by not triggering a force update.
Accompanying changes are also made in WifiTracker to prevent
onAccessPointsChanged callbacks from being invoked until the tracker
receives a new 'SCAN_RESULTS_AVAILABLE' broadcast (ag/2409026).
Bug: b/38212080
Test: runtest --path
packages/apps/Settings/tests/unit/src/com/android/settings/wifi/WifiSettingsUiTest.java
one minute later.
Change-Id: I4f9b2ec855e057e28235b0253ab42c6b4521bebc
Merged-In: I4f9b2ec855e057e28235b0253ab42c6b4521bebc