There were a couple problems with work profile state in location. First,
we assumed that notifications sent to parent users would also be sent to
profiles but this is not true. Second we had assumed location status in
profiles was always identical to the parent user, but work profiles may
have user restrictions applied which are not present on the parent user.
The easiest way to handle these issues seems to be to expand LMS user
handling to deal with all users, rather than making various assumptions
which may or may not be true.
This also means we need to store last locations on a per profile basis.
Since we're refactoring how last location works completely, we also
removed the special NO_GPS handling for last locations. With the new
permission strings we now no longer have to exclude gnss based location
from coarsening. This lets us:
1) deprecate and remove various constants and methods use for storing
coarse locations tied to fine locations
2) substantially simplify code that calculated coarse location
This also exposed numerous bugs in the location service where we were
using the current user's state instead of the calling user's state,
which could have exposed the current user's location to other users
inappropriately.
Bug: 148798374
Bug: 146071833
Test: presubmits + manual
Change-Id: I2d3216a9fb58b73d0124d563b05de8870b70b716
Change the framework to handle brightness as a float rather than an int.
Test: AutomaticBrightnessControllerTest
BrightnessConfigurationTest
BrightnessMappingStrategyTest
BrightnessUtilsTest
DevicePolicyManagerTest
DisplayManagerServiceTest
DisplayTest
DozeScreenBrightnessTest
PowerManagerTest
PowerManagerVrTest
SettingsProviderTest
Exempt-From-Owner-Approval: Changing param from int to float
Change-Id: I413641cd987c5ec8f82753c0388a33f85a9682de
Tethering notification needs to launch TetherSettings when user
tapped notification. But OEM can have their own Settings
package. So add ACTION_TETHER_SETTINGS in Settings.java for
launching TetherSettings via intent. Then OEM can launch their
TetherSettings by receiving this intent.
Bug: 149068177
Test: Build, Flash, manual test.
Change-Id: I98f6b50b45f1f8cc1fe6dab7b2592de4611363ce
Add document that ALLOWED_NETWORK_TYPES takes a long type in
Telephony.SimInfo.
Bug: 148853369
Test: Build pass
Change-Id: Id8049f66f4b5409ca2e945f39d679d4f59014ec8
In order to be consistent with other existing APIs.
Test: Build
Bug: 146563563
Merged-In: Iac8d9abe3b011485ffe8220d94f25f99d022014b
Change-Id: Iac8d9abe3b011485ffe8220d94f25f99d022014b
(cherry picked from commit e94a7a4f97)
AT&T requires showing data coding scheme, location check
time, whether shown to the user or not in the test menu.
Expanded database to support this.
Bug: 144152683
Test: Manully sending fake messages and verified database
Merged-In: Ib5b78802e7548da9f92492aae4c94ed3488b5e3d
Change-Id: Ib5b78802e7548da9f92492aae4c94ed3488b5e3d
(cherry picked from commit 641db9a36a)
There will be no special protection mechanisms around MODULE_APPS,
so we're going to remove it for now.
All the MODULE_APPS should be protected with a permission, etc, so
the change should be safe.
Bug: 148177503
Test: Build / treehugger
Change-Id: I76328c2d5aaa3f171bf8afde5b3d1accad8c2e2b
The usage was removed from opt/net/wifi earlier.
Also, cleaned up a bunch of other settings in SettingsProvider
that were previously removed in ag/10080845.
Bug: 141623345
Test: Compiles
Change-Id: I18690ee12d6b701b6f487285e36ca0143244bcfd
AT&T requires showing data coding scheme, location check
time, whether shown to the user or not in the test menu.
Expanded database to support this.
Bug: 144152683
Test: Manully sending fake messages and verified database
Change-Id: Ib5b78802e7548da9f92492aae4c94ed3488b5e3d
RawContacts.BACKUP_ID is public and might be used by 3P. So we will not
deprecate it.
Test: build
Bug: 147668000
Change-Id: I63d4541340cde03e7269b0680a61b7fd198e7df9
and cache things on the first round trip.
Test: atest frameworks/base/core/tests/coretests/src/android/provider/NameValueCacheTest.java
Bug: 147739090
Change-Id: I9ed48f34be096f2b2d673ee1f5330388c14b695c
1. Background started foreground service shall not have
while-in-use permissions including location, camera and
microphone. Many exemptions have been applied including:
--FGS started by widget.
--FGS started by notification.
--FGS started by IME or other visible app.
--FGS started by ROOT_UID, SYSTEM_UID, NFC_UID.
2. Add a phenotype key KEY_DEFAULT_BACKGROUND_FGS_STARTS_RESTRICTION_ENABLED
to turn on/off this feature (default is on).
3. In dogfood, if a background started FGS with while-in-use permission
(any of location/camera/microphone) run into this restriction, the FGS
will not been granted these permission. we show a toast message to
alert user and ask them to write a bugreport using instruction at
go/r-bg-fgs-restriction. So we can have a statistic how many apps will
be impacted by this feature.
These is a flag Settings.Global.FOREGROUND_SERVICE_STARTS_LOGGING_ENABLED
to turn on/off the toast message (default is on, in dogfood)
Bug: 136219221
Test: atest android.app.cts.ActivityManagerProcessStateTest
atest android.app.cts.ActivityManagerApi29Test.java
atest android.app.cts.ActivityManagerFgsBgStartTest
Change-Id: Ibc8aaa6839a69136f9311bfacdbab9705b31b6a7
Add the ability for the user to turn on/off UCE in settings.
Bug: 148167203
Test: atest CtsTelephonyTestCases:RcsUceAdapterTest
Merged-In: Ic53a9ef32343bfa4d96c2cf7fc0f0791265d2bd1
Change-Id: Ic53a9ef32343bfa4d96c2cf7fc0f0791265d2bd1
Some APPs(like OMA DM) might enable or disable 5G settings, so redesign
the setPreferredNetworkType behavior.
1. Create allowed_network_type in telephonyprovider
2. Create get/set allowed network type API
3. When APPs call setPreferredNetworkType() that will AND with allowed
network type.
Bug: 136730709
Test: By Manual
1. setAllowedNetwork to disable 5G
2. setPreferredNetworkTypeBitmask to set NR_LTE_GSM_WCDMA
3. framework set LTE_GSM_WCDMA to modem
Merged-In: Ia257e6ddaa33c32bc09340a59c9daf71ce1fa8cf
Change-Id: Ia257e6ddaa33c32bc09340a59c9daf71ce1fa8cf