Dreams and docking often refers to "user zero" or "system user".
But more generally, the special user for dreams or switching-to-on-docking
need not be user 0, and in fact won't be in certain modes. So this needs updating.
Test: the files mentioned in the topic
Bug: 257333623
Change-Id: Ic671c91c32e9bf24695b067ff97cf9fa65534b1e
Make sure not to overwrite any current user selection for
Secure.STATUS_BAR_SHOW_VIBRATE_ICON that the user may have
made.
Issue: 253992986
Test: Manual - see issue
Change-Id: I33155a27707e6d30ff56fb090c71b9670a98fc31
New AppOp to be used for near-field file-based audio transfer
(ie. TV Remote Service) to allow audio recording
regardless of sensor privacy state, because it is considered
an intentional user interaction: hold-to-talk
And new Global Settings and SensorPrivacyManager APIs for the
opt-out toggle - as agreed with PWG.
Bug: 235618473
Test: manual
Change-Id: I95cdf8fa362b937609bdf834a82b05ec8375ac26
A subsequent change will actually move the files to the other git
project.
Bug: 243194720
Test: presubmit
Change-Id: If126bb68f74852528c4da8df79831b49b5129983
To update locale, it doesn't need a full configuration because
system only applied the diff of config from non-undefined fields.
IActivityManager#getConfiguration actually gets the configuration
according to the pid, which is process configuration. And process
configuration can be overridden by the activity running in its
process. So the returned value shouldn't be used to update the
system persistent configuration.
Therefore it is enough to use a new Configuration instance with
setting the necessary fields. This is also more efficient that
saves a binder call to system.
Bug: 253386061
Test: atest LocaleManagerTests
Change-Id: Icdce437fcf1a3bef0562cfc4dd5ad3ba52ea08ef
Previously, a setting is updated before the memory usage limit
check, which can be exploited by malicious apps and cause OoM DoS.
This CL changes the logic to checkMemLimit -> update -> updateMemUsage.
BUG: 239415861
Test: atest com.android.providers.settings.SettingsStateTest
(cherry picked from commit 8eeb92950f)
Merged-In: I20551a2dba9aa79efa0c064824f349f551c2c2e4
Change-Id: I20551a2dba9aa79efa0c064824f349f551c2c2e4
Make the Secure.STATUS_BAR_SHOW_VIBRATE_ICON default configurable
Bug: 253992986
Test: manual - see issue
Change-Id: Ibada490c823a47ef145d9b50cadd4838c687711e
Memory usage per package was limited by "bytes" but counted by
"character length". Every character is 2 bytes in Java. This CL fixes
the counting and also doubles the bytes limit so that it doesn't cause
any behavior changes.
BUG: 253499273
Test: atest com.android.providers.settings.SettingsStateTest
Change-Id: I7a8be794582c153adf43ec735d2563695ea1533d
Prior to targetSdk 22, apps could add random system settings keys which
opens an opportunity for OOM attacks. This CL adds a key size limit.
BUG: 239415997
Test: manual; will add cts test
Change-Id: Ic9e88c0cc3d7206c64ba5b5c7d15b50d1ffc9adc
This reverts commit fb43f54289.
Reason for revert: Software Cursor not launching in Android U
Test: manual
Change-Id: I3f27b7d8958f455a580758192794308d5f91d152
Migrates getDefaultVrComponents used by SettingsProvider and
adds a flag for hidden API enforcement to ApplicationInfo.
This removes any dependency on SystemConfig from core/ and
so it can be moved into services/core and exposed as a
mainline API.
This was done instead of exposing all of the methods through
SystemConfigManager, as that is designed for use across
processes, and it's more efficient to expose SystemConfig
directly for modules running in the server process.
Although VrManager is a nullable service, so getDefaultVrComponents
had to live there to simplify the logic and maintain the existing
behavior.
Bug: 236389629
Change-Id: I4c2b14e1d34aaf439ceb1a3f9c8207e5d39fa6c2
This reverts commit 36e81f298f.
Reason for revert: Software Cursor will not be launching in Android U
Test: manual
Change-Id: Ibf70015d294e03aa74d839c0caa64bf3542b341f
Previously we only auto enable factory system trust agents when the
devices is booted for the first time. This change added logic to detect
newly installed/enabled trust agents, and enable them if appropriate.
Fixes: b/243705470
Test: atest FrameworksMockingServicesTests:TrustManagerServiceTest
Change-Id: I3c345a44cfcfccc6f7e2507ba37e378b6b16bd98
The settings and systemUI use the LocalBluetoothLeBroadcast and
they use different sharedPreferences since the context is different.
It causes the data are not consistent.
Solution: Add data into ContentProvider, and listen the data changed
by the ContentObserver.
Bug: 243107842
Test: build pass. manual test in local.
atest SettingsBackupTest
atest SettingsValidatorsTest
Change-Id: I5f8367f3eb8e2dafa2986004dd8540de41409192
Merged-In: I5f8367f3eb8e2dafa2986004dd8540de41409192
The settings and systemUI use the LocalBluetoothLeBroadcast and
they use different sharedPreferences since the context is different.
It causes the data are not consistent.
Solution: Add data into ContentProvider, and listen the data changed
by the ContentObserver.
Bug: 243107842
Test: build pass. manual test in local.
atest SettingsBackupTest
atest SettingsValidatorsTest
Change-Id: I5f8367f3eb8e2dafa2986004dd8540de41409192