Commit Graph

407 Commits

Author SHA1 Message Date
Hani Kazmi
d22dc992a3 [AAPM] Add framework stats atoms for Advanced Protection
Emit logs whenever advanced protection state changes, or the user is impacted
(inferred by a dialogue being shown)

Bug: 391635274
Change-Id: Ie940afbeaf023df5b1733b2137829ecc78ade137
Test: AdvancedProtectionManagerTest AdvancedProtectionServiceTest
Flag: android.security.aapm_api
2025-03-12 03:47:13 -07:00
Shawn Lin
50d8d10c58 Merge "Update strings for summary in device unlock page" into main 2025-03-11 19:25:14 -07:00
Shawn Lin
10cf921fb7 Update strings for summary in device unlock page
Bug: 370940762
Test: atest FaceStatusUtilsTest
            FingerprintStatusUtilsTest
            ScreenLockPreferenceDetailsUtilsTest
	    FaceSafetySourceTest
	    FingerprintSafetySourceTest
	    FaceStatusPreferenceControllerTest
	    FingerprintStatusPreferenceControllerTest
Flag: com.android.settings.flags.biometrics_onboarding_education
Change-Id: I0927529e939a8e16ddf6692adc8ad427bdbe1bca
2025-03-05 03:11:27 +00:00
Azhara Assanova
db59b0e729 Update ActionDisabledByAdvancedProtectionDialog
For UI, the dialog was migrated to SpaDialogWindowTypeActivity, which
has a Material3 theme and can support rendering over QuickSettings.

This change also adds logic around which message to show depending on
the received extras for feature ID and the dialog type.

Finally, the dialog will display the support button if the help Intent
URI exists and resolves to an activity. Tests around the support button
will be added in a follow up CL.

Bug: 389080341
Test: Visual test
Test: atest ActionDisabledByAdvancedProtectionDialogTest
Flag: EXEMPT bug fix
Change-Id: I0ed23cd44666a40ad54d755f628cd36ef06cc145
2025-03-04 12:00:50 +00:00
Jacky Wang
ae280f8721 [Catalyst] Lock screen summary is not updated
In original implementation, DashboardFragment.onResume calls
AbstractPreferenceController.updateState to refresh preference. While
after Catalyst migration, it requires explicit update when external
dependency is changed.

Bug: 397798327
Flag: com.android.settings.flags.catalyst_lockscreen_from_display_settings
Test: adb shell settings put secure lock_screen_show_notifications/lock_screen_allow_private_notifications
Change-Id: I1c16d7df62cdb1cb53d365f2636aa1dc0a424839
2025-02-25 09:01:43 +08:00
Wa Gao
c668a9e5c1 Merge "Disable the ContentProtection setting switch bar when current user is a guest user." into main 2025-02-24 16:02:09 -08:00
lbill
0a46950939 Do not set title description for Confirm Activity
The Confirm Lock Activity for Auto-Confirm feature announce
redundant description after confirm the PIN/Password in the
Click Toggle CUJ.
1. The title won't be present on the Confirm Lock
2. Set title for Confirm Lock breaks the a11y requirement

Flag: EXEMPT for fixing a11y bug
Bug: 384628809
Test: Manual enable a11y talkback, go to Settings > Security & Privacy
> Device unlock > Screen lock > Settings > Auto-confirm unlock toggle
> input PIN/Password to dismiss the confirm lock activity
> Ensure no redundant title description announced by talkback

Change-Id: I95fc03aae4fb5dc7500cc18c383dff62b95bc3f1
2025-02-21 03:20:08 -08:00
Wa Gao
baf503050f Disable the ContentProtection setting switch bar when current user is a guest user.
Bug: 337774836
Test: m -j256 Settings && atest
SettingsRoboTests:ContentProtectionTogglePreferenceControllerTest
Flag: EXEMPT bugfix

Change-Id: I36173b2e7027765b526dfa2ebca216a7de71e669
2025-02-10 19:32:11 -08:00
Yuri Ufimtsev
55b7b0613d Allow the LockPatterUtils to be null
In some tests it could inconsistently become a null, crashing with NPE, for the reason I can't understand (maybe there is a race condition somewhere between mocking and accessing the LockPatterUtils in such tests)
Let's accept it gracefully

Test: atest SettingsUnitTests
Bug: 382637173
Flag: EXEMPT bugfix
Change-Id: I35d5faa1a29307fc780207a816680a32b2796bc0
2025-02-05 14:38:46 +00:00
Shawn Lin
d6df87cca6 [Biometric Onboarding & Edu] move screen lock settings to choose lock
- Hide gear menu in LockScreenSafetySource
- Move screen lock settings to ChooseLockGeneric

Bug: 370940762
Test: atest ScreenLockPreferenceDetailsUtilsTest
Flag: com.android.settings.flags.biometrics_onboarding_education

Change-Id: I07c7bb16ecc2ea6e7cd64a4e1d6bf4f493c5b951
2025-01-22 03:28:19 +00:00
Hani Kazmi
57e649ae4e Merge "Revert "Revert "[AAPM] Add advanced protection dialog according ..."" into main 2025-01-03 09:25:46 -08:00
Hani Kazmi
8e28132ba2 Revert "Revert "[AAPM] Add advanced protection dialog according ..."
Revert submission 31078830-revert-30767017-aapm-dialog-api-feedback-TBLFTCNTUN

Reason for revert: Addressed failing test

Reverted changes: /q/submissionid:31078830-revert-30767017-aapm-dialog-api-feedback-TBLFTCNTUN

Change-Id: I3321b4f5baaca9dd270350b9201998ffe0d40473
2025-01-02 05:07:50 -08:00
Priyanka Advani (xWF)
47d59ab974 Merge "Revert "[AAPM] Add advanced protection dialog according to API f..."" into main 2024-12-27 14:25:58 -08:00
Jacky Wang
cfcf20c70a [Catalyst] Provide screen key to @ProvidePreferenceScreen
NO_IFTTT=Catalyst only

Bug: 386179791
Flag: com.android.settings.flags.catalyst
Test: manual
Change-Id: Ie8106ec45a32e4a61826512fc62746c9ffc47d9c
2024-12-27 17:14:27 +08:00
Priyanka Advani (xWF)
2574343b43 Revert "[AAPM] Add advanced protection dialog according to API f..."
Revert submission 30767017-aapm-dialog-api-feedback

Reason for revert: Droidmonitor created revert due to b/384828570. Will be verifying through ABTD before submission.

Reverted changes: /q/submissionid:30767017-aapm-dialog-api-feedback

Change-Id: Ibf26aca2453f2007370974290f5c16d6b091341e
2024-12-23 13:41:43 -08:00
Azhara Assanova
e2248f1c4f [AAPM] Add advanced protection dialog according to API feedback
This change also updates ActionDisabledByAdminDialog because the
AdvancedProtectionManager#createSupportIntent method is now static.

Bug: 378968840
Bug: 352420507
Test: ActionDisabledByAdminDialogTest
Test: WepNetworksPreferenceControllerTest
Test: manual
Flag: android.security.aapm_api
Change-Id: I8443742aadead45091fee757cbdf715d28eee495
2024-12-13 13:25:38 +00:00
Jacky Wang
efcb4dfddf [Catalyst] Migrate AmbientDisplayAlwaysOnPreferenceController
As the preference is exported as external settings, for safety, do not
update the preference key with datastore key. As a workaround, manage a
mapping between preference hierarchy key and datastore key.

Bug: 372307567
Flag: com.android.settings.flags.catalyst_lockscreen_from_display_settings
Test: devtool
Change-Id: I56126485061859b41216cd23b8e1caf63823a1ec
2024-11-21 13:37:31 +08:00
Jacky Wang
b6132572ea [Catalyst] Migrate "Lock screen" entry point
Bug: 372307567
Flag: com.android.settings.flags.catalyst_lockscreen_from_display_settings
Test: manual
Change-Id: I0c269c550c678362f345c9b5438a133c7a76fe10
2024-11-21 10:24:38 +08:00
Andreea Costinas
25d8e56c53 Relax WiFi cert installation restrictions in HSUM mode
The Settings app runs under the current user, which previously lacked
the necessary permissions to install client certificates in HSUM mode.

This change allows any admin user to install these certificates.

Bug: b/370013519
Flag: EXEMPT bugfix
Test: manually installed and removed client certificate for WiFi
Change-Id: I57a7364c76a0adb7ed4112e48fb20070ab9d7bff
2024-11-12 10:40:26 +00:00
Chris Antol
f141563830 Add Lock Screen page skeleton and TS flag
Bug: 372307567
Test: none
Flag: com.android.settings.flags.catalyst_lockscreen_from_display_settings
Change-Id: I0740fea06e8f69bb8408ef5389b34756cfe475c7
2024-10-22 18:04:46 +00:00
Jacky Wang
f6a573530e Move ObservablePreferenceFragment class
Bug: 365922551
Flag: EXEMPT Move class only
Test: Presubmit
Change-Id: I17851055b09d73b95e6adaafbe96f4375d5f637e
2024-09-13 20:39:59 +08:00
Jacky Wang
93b437fcf2 Avoid reference ObservablePreferenceFragment
Bug: 365922551
Bug: 275385372
Flag: EXEMPT Code cleanup
Test: atest AutoPinConfirmPreferenceControllerTest
Change-Id: I55cec2ca5535eac3f0fae16af6eae320b39f1fbe
2024-09-12 14:46:54 +08:00
Joshua McCloskey
ed59922ca8 Remove face/fignerprint search if not present
Test: Verified manually with a device that if face/fingerprint are not
present they do not show up.
Fixes: 350599580
Flag: EXEMPT bugfix

Change-Id: I6a691d2985e4839336e9c08dfa6c97abe23f43f2
2024-07-30 18:14:41 +00:00
Eric Biggers
9ab4bf20f7 Merge changes I20f2330d,Iaca5b20c into main am: 790e28c431 am: 231766c463
Original change: https://android-review.googlesource.com/c/platform/packages/apps/Settings/+/3061866

Change-Id: I66a91364d8211acf73310d55997bd5f6d08e2ae8
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-05-06 18:09:47 +00:00
Eric Biggers
3fd46cc27d Use KeyProperties.UID_SELF instead of KeyStore.UID_SELF
Since the class 'android.security.KeyStore' is going away, the UID_SELF
constant is being moved to a more appropriate location in KeyProperties.
Update code that references this constant to use the new location.  No
change in behavior; the value of the constant remains the same.

Bug: 326508120
Test: build
Flag: NONE mechanical refactoring with no behavior change
Change-Id: Iaca5b20c37b7952df8f26a99b3f7391c5a7f01b6
2024-04-25 19:21:31 +00:00
Chun-Ku Lin
247476bab7 Update footer text whenever the ScreenPinningSettings is shown
Bug: 333029993
Test: atest ScreenPinningSettings
Test: manual
Flag: EXEMPT low risk bug fix
Change-Id: Ia14a50fcc81d672732b78c523968a5921cae65b1
2024-04-17 05:34:59 +00:00
Treehugger Robot
6c3f348f87 Merge "Use disabled summary when trustagents are disabled" into main 2024-04-02 15:35:58 +00:00
Jason Chiu
0bd014c497 [Safer intents] Settings misc
To avoid implicit intents, make intents launch explicitly.

Test: build
Bug: 323061508
Change-Id: Ie19cbceb89842a75a180898abcce81b63c18d46c
2024-03-29 04:22:45 +00:00
Billy Huang
ee6c4bacd8 Use disabled summary when trustagents are disabled
This makes trust agent preferences follow the behavior of other features that can be disabled by device admins, otherwise the preference is simply greyed out without context until the user clicks on the preference.

Bug: 319095039
Test: Covered by TrustAgentListPreferenceControllerTest#onResume_restrictedPreferenceShouldUseAdminDisabledSummary
Test: atest SettingsRoboTests:com.android.settings.security --host
Test: manually validated that disabled admin policy results in showing "Controlled by admin" as the summary
Flag: EXEMPT bugfix for single preference in settings
Change-Id: I89f052cf2479a120d8b5b223414162f129cde89e
2024-03-28 10:40:40 -07:00
Jason Chiu
7f344f53f6 [Safer intents] Credentials
To avoid implicit intents, make intents launch explicitly.

Bug: 323061508
Test: build
Change-Id: I236b6214e761574c82a81b4a7e068f617eae5e9d
2024-03-27 07:58:31 +00:00
Nino Jagar
65eb00f0f3 Integrate admin controls for content protection
Bug: 323038631
Test: End-to-end with TestDPC, new units
Change-Id: I98d52fdd95fca023b8eb576c97d563a1f3cab464
2024-03-07 22:56:09 +00:00
Yanting Yang
12b8d82376 Support dynamic search index for App pinning
Bug: 243899654
Test: manual & m RunSettingsRoboTests
Change-Id: I5ae5b604894c53e0e816f7a244104321e22c12de
2024-01-25 04:01:07 +00:00
Ling Ma
63f74b8567 Wrap subManager creation with createForAllProfiles
Since U, a sub can be associated with a particular profile, and thus in V we enforce filtering on the caller and only show the subs that are associated with the caller.
However, in some cases the caller indeed needs to see all subs regardless of its association, e.g. sysUI. Therefore, a param isForAllProfile is added to indicate whether the caller intends to see all subs.

Bug: 296076674
Test: voice call + data browsing
Flag: ACONFIG com.android.internal.telephony.flags.enforce_subscription_user_filter
 DEVELOPMENT
Change-Id: I7dfb324d7e08fc4c845c44cd93e6ddf7d0368c1f
2024-01-22 22:02:00 +00:00
Jan Tomljanovic
a01eee9bd2 Merge "Protect "Lock after timeout" page with an auth challenge." into main 2024-01-11 15:32:30 +00:00
Sunny Shao
076ed573eb Revert^2 "Nullability Annotations replacement"
This reverts commit 19d1d3d15d.

Reason for revert: revert it because this is not the root cause.

bug: 316867690
Change-Id: I0f168dbb64044aa720202af7b1040afd4f028c9c
2024-01-10 07:34:01 +00:00
Sunny Shao
19d1d3d15d Revert "Nullability Annotations replacement"
This reverts commit cf0501e4d7.

Reason for revert: b/317462033, it seems a flaky but revert it first.

Change-Id: Ie1d5e279cca6477fc17d8c27c1ecda8d7a6b2553
2023-12-29 02:28:24 +00:00
Jan Tomljanovic
c4ec19acfa Protect "Lock after timeout" page with an auth challenge.
Test: manual
Bug: 315937886

Change-Id: Ib3da9f783892828c0c9cfdc4ebb27b2d982e5274
2023-12-21 14:45:12 +00:00
sunnyshao
cf0501e4d7 Nullability Annotations replacement
-- Replace the android.annotation.Nullable / android.annotation.NonNull
   with androidx.annotation.Nullable / androidx.annotation.NonNull

Bug: 316867690
Test: build pass
Change-Id: I0c1da55dfb09ece855151c47e0492d6f46538621
2023-12-20 08:50:09 +08:00
Jan Tomljanovic
db1402a4df Always confirm eSim removal.
Test: atest DeleteSimProfilePreferenceControllerTest
Bug: 313604661

Change-Id: I0c43790bf43bedcc2e8075aa7be0b25876c731b4
2023-12-12 15:57:19 +00:00
Wa Gao
b14867f6ac Add dialog for top switch on fully managed devices.
Bug: 311233745
Change-Id: Id4043675041d1cf9c0ed307f3a0c2dc65768641b
2023-12-02 00:42:33 +00:00
Wa Gao
b9835cea12 Refactor to use the utils class.
Bug: 298076922

Change-Id: I0085fdf7594d0ba9243a7b44600252d8c5b21608
2023-11-16 19:46:27 +00:00
Wa Gao
bd073bc18c Merge "Hide the setting from the search when feature is disabled." into main 2023-11-14 22:16:32 +00:00
Wa Gao
6ffb674ff4 Hide the setting from the search when feature is disabled.
Bug: 310243923
Change-Id: Idb3b903f19d81825e6f721a87ec8c5238c86118d
2023-11-14 20:27:52 +00:00
Wa Gao
cd9c661b37 Fix the NullPointerException in ContentProtectionTogglePreferenceController.
Bug: 310658123

Change-Id: I249a76ff1f432cb76269b1ac2cc3fe26e86b2bae
2023-11-14 03:44:42 +00:00
Wa Gao
dcf678c835 Merge "Add the dialog when clicking on the diabled switch." into main 2023-11-10 19:13:13 +00:00
Wa Gao
6b9e20d32d Add the dialog when clicking on the diabled switch.
Bug: 302189945
Change-Id: I0bf7774b80a59c70a2ea1725e0adba522854adde
2023-11-10 17:55:25 +00:00
Chaohui Wang
0e1edc6c74 Merge "Fix ContentProtectionTogglePreferenceController" into main 2023-11-08 09:05:22 +00:00
Chaohui Wang
bf70edddd0 Fix ContentProtectionTogglePreferenceController
The OnMainSwitchChangeListener is replaced with OnCheckedChangeListener

Bug: 306658427
Test: m Settings
Change-Id: I24021cb9acb308c3f85e51e9f79ad2bf564c789a
2023-11-07 14:18:13 +00:00
Chaohui Wang
08a1c9876e Revert^2 "Migrate to CompoundButton.OnCheckedChangeListener"
8979681a8d

Change-Id: I60edd3aabf49afbe4aa016af780baa68d928bddf
2023-11-07 14:17:15 +00:00
Sebastian Pickl
8979681a8d Revert "Migrate to CompoundButton.OnCheckedChangeListener"
Revert submission 25147565-onSwitchChanged-CompoundButton

Reason for revert: breaking builds 

Bug:309601476

Reverted changes: /q/submissionid:25147565-onSwitchChanged-CompoundButton

Change-Id: Ie746db87d9c642599593aa3d5e5baf6b7ba89c0e
2023-11-07 13:26:36 +00:00