Use startActivityAsUser instead of startActivity API to start the AppLocalePickerActivity of different users
Bug: 274378136
Test: 1. Perform AppLocalePickerActivityTest robolectric test
2. Perform the manual test by switching different users
3. Perform the manual test by switching different profiles
Change-Id: I4405b3b7e832b71b9ef66fa71d9e42ce12da167c
OP_SYSTEM_EXEMPT_FROM_POWER_RESTRICTIONS details:
* An app with this appop will be made exempt from all
power restrictions, including app standby and doze.
* In addition, the app will be able to start fgs from
the bg, and the user will not be able to stop fgs
run by the app.
Changes:
* Implement the OP_SYSTEM_EXEMPT_FROM_POWER_RESTRICTIONS
Bug: 246330879
Test: atest PowerAllowlistBackendTest
Manual testing:
- Give OP_SYSTEM_EXEMPT_FROM_POWER_RESTRICTIONS appop to TestDPC app
- Verify the app can start fg services from the bg
- Verify fgs started by the app cannot be stopped
- Verify the app cannot be put into background restricted via Settings
Change-Id: If9e76076c59195f1e6e5f3eee3c8e7a0c754d8de
In the settings app, allow users to change the preference of the Nfc Tag apps.
Bug: 244272155
Test: make RunSettingsRoboTests ROBOTEST_FILTER=NfcTagAppsPreferenceControllerTest
Change-Id: I28903fae8935613a0e8618da21ca44e98b8801d5
This option is seen by clicking the '3-dot' menu on Settings->Cloned Apps page and requires:
1. Flag 'remove_all_cloned_apps' to be turned on.
2. Cloned UserId to be present in system.
Test: Manually setting the flag, creating clones.
Change-Id: I83ff40923f7932ed6b23cb831bdcd2cb9252d295
- Add onClick listeners of add/trash icons on Cloned Apps page
- New layout with ImageView(Add icon) and ProgressBar
- Creation of clone user and install package in clone user
- Uninstallation of cloned app
- Summary when app is being cloned and after clone completion
- Action metrics
Bug: 259022623
Test: make RunSettingsRoboTests -j64
Change-Id: Idc76fb8d88ba8987084beef2a0ce4c57d6c45b9e
Modify system settings page is using the page id of display over other
apps. Each page should have its own page id, so creating another one for
modify system settings page.
Bug: 260056090
Test: manual test
Change-Id: I4e25734c551f166a0c080eb534d22aea881242d9
Currently, list type is calculated in onCreate(), and will default to
LIST_TYPE_MAIN if the class name is not set to any special activity.
When adding new app list to onCreate(), but not changing
getSpaDestination() could led to issue when spa is on.
Calculate list type first in onAttach() as single source of truth could
solve this issue.
Bug: 235727273
Test: Manually with Settings with / without spa
Change-Id: If8a3d61cfd08d7d67e32253c3ac7266e5e9e7b4c
This new screen shows apps that hold the new RUN_LONG_JOBS permission.
Also add a reference to this screen in an app's info page under the
"Advanced" section for apps that have requested this permission.
Bug: 255821578
Test: atest AppFilterRegistryTest
Test: make -j RunSettingsRoboTests \
ROBOTTEST_FILTER="LongBackgroundTasksDetailsTest|
LongBackgroundTasksDetailsPreferenceControllerTest"
Test: visually via the Settings page
Change-Id: Idc498e52d29abc6df757c35e8bc91f00de92ba4a
This will ensure that a new tab is not created for clone profile. The
existing behavior of creating work tab when managed profile is present
on device remains as-is.
Bug: 248204976
Test: manual (verfied with primary, clone and managed profile present on
device at the same time)
Test: make RunSettingsRoboTests -j
Change-Id: I116a0de69c51e90aa59fdb47e904c567e5d62102
Guarded by feature flag SETTINGS_ENABLE_SPA, default false.
When flag enabled, will navigate to the new App List pages
which are implemented by SPA.
Bug: 235727273
Test: Manual test with Settings app
Change-Id: I1905a92dd19f04c46476ce3157897ea609e590df
- App usage page only use package name to launch the page, it can not
identify the different userId between normal app and work profile
app, add extra userId info into launch args
- Remove no battery usage state/string if usage time is empty
Bug: 251471047
Test: make SettingsRoboTests
Change-Id: Id06ebb0f0fcd863e423acd7839f89bc0ae2444c1
To align SearchView x button with right border.
Bug: 254403811
Test: manual,
Settings > Apps > See all apps > tap the search icon >
input something and observe.
Change-Id: I5146c9ffb3c5177926e75f673497408092f6c065
Also let SettingsSpaUnitTests depends on the
mockito-target-extended-minus-junit4 to support mock static methods.
Bug: 236346018
Test: Unit test & Manual with Settings App
Change-Id: Ib7a3022b20e30c8292713f52d29785eb78899c70
Fix not seeing apps with the LocaleConfig in the app language selector of Settings.
Bug: 239054437
Test: Manual
Change-Id: I4db78300b63e6fda2890383c097bb46102084d95
Including the following features,
- App icon
- App label
- Display over other apps item
- Modify system settings item
- Picture in picture item
- Install unknown apps item
- App version
Bug: 236346018
Test: Manual with Settings App
Change-Id: Ieabdd32fac1d0992ba5c22d459631b42a17ce32a
Also auto fix some lint issues.
Bug: 243337537
Test: Manual
Change-Id: I55a393517ae01d6a8c17106a3e7750323838cebb
(cherry picked from commit 67599bce4e)
Merged-In: I55a393517ae01d6a8c17106a3e7750323838cebb
Moving the old restricted page to the new optimization page will happen
in a follow-up CL.
Test: Unit, manual
Bug: 238026672
Change-Id: I5fee9ebe03284a013da6bfca9ada8b166c6af91c
(cherry picked from commit 5ecb1a1d69)
Merged-In: I5fee9ebe03284a013da6bfca9ada8b166c6af91c
Guarded by feature flag SETTINGS_ENABLE_SPA, default false.
When flag enabled, will navigate to the new "Install unknown apps" page
which is implemented by SPA.
Bug: 235727273
Test: Manual test with Settings app
Change-Id: Ife038e4b2b23520f6cc46075a6bae6282f11f1af
When DISALLOW_APPS_CONTROL restriction is enabled, users should not be
able to enable/disable apps, clear app caches and clear app data.
The function of reset app preferences will re-enable the disabled apps,
it can let users bypass DISALLOW_APPS_CONTROL to enable an app disabled
by IT admin to see sensitive information.
To fix this vulnerability, we add a check for DISALLOW_APPS_CONTROL
restriction before users reset app preferences. Once the restriction is
enabled, it will show dialog “Blocked by your IT admin” instead.
Bug: 238745070
Test: Verify change by turning on/off DISALLOW_APPS_CONTROL with TestDPC.
Change-Id: Iffee73cf4952b686a78b4c7aaa54747971337d03
(cherry picked from commit 4356c9c653)
When DISALLOW_APPS_CONTROL restriction is enabled, users should not be
able to enable/disable apps, clear app caches and clear app data.
The function of reset app preferences will re-enable the disabled apps,
it can let users bypass DISALLOW_APPS_CONTROL to enable an app disabled
by IT admin to see sensitive information.
To fix this vulnerability, we add a check for DISALLOW_APPS_CONTROL
restriction before users reset app preferences. Once the restriction is
enabled, it will show dialog “Blocked by your IT admin” instead.
Fixes: 238745070
Test: Verify change by turning on/off DISALLOW_APPS_CONTROL with TestDPC.
Change-Id: Iffee73cf4952b686a78b4c7aaa54747971337d03
- Settings header is restricted scrolling by this ag/15029686
- To void some pages can't show the contain part while heading unscrolling.
We allow the header can be scrolling in the landscape mode.
Fixes: 207353353
Test: make RunSettingsRoboTests -j
Change-Id: Ice97c6244716d4768167feb78588807d13b06a94
Moving the old restricted page to the new optimization page will happen
in a follow-up CL.
Test: Unit, manual
Bug: 238026672
Change-Id: I5fee9ebe03284a013da6bfca9ada8b166c6af91c
Currently Kotlin files cannot build with library app-compat-annotations.
Only one @ChangeId need this library, create separate build target
library Settings-change-ids to solve this issue.
After this cl, Kotlin could be used for Settings App.
Fix: 229037247
Test: make Settings
Change-Id: I4a0d99425c9e6cc2cbc015d2561daa68609ca0fd
This reverts commit d9453bf8c6.
Reason for revert: This introduces a new flicker which doesn't seem good. Will have another solution once all things are ready.
Fixes: 232355879
Change-Id: I0bbc4561ce4fbef36d59de15ae98705a6d81574c