Commit Graph

411 Commits

Author SHA1 Message Date
TreeHugger Robot
faf0721f2c Merge "Revert "Update animation for fingerprint edu page"" into sc-v2-dev 2021-11-01 21:37:29 +00:00
Daniel Chapin
ba0a012b57 Revert "Update animation for fingerprint edu page"
Revert submission 16091075-update_lottie_fp_edu

Reason for revert: Droidfood Blocking Bug: 204719520
Reverted Changes:
I0c3b1ad93:Update animation for fingerprint edu page
Id07ee17fa:Update animation for fingerprint edu page

Change-Id: I0f301491c2b526443a40b916ac2d98093d80a759
2021-11-01 19:36:00 +00:00
TreeHugger Robot
4b40fa5016 Merge "Update animation for fingerprint edu page" into sc-v2-dev 2021-10-29 18:24:18 +00:00
Mill Chen
dc4ec9bfca Update animation for fingerprint edu page
Bug: 197264655
Test: visual verify
1) Navigate to fingerprint unlock and start fingerprint enrolling flow
2) Observe the education page and see if the animation works

Change-Id: Id07ee17fac29f8f49babb137889e50514ec86326
2021-10-26 15:16:50 +08:00
Joshua Mccloskey
f0a55f7c4e Fixed bug causing user to be stuck on face intro
Test: See below
Fixes: 203375738
Change-Id: I3e59191a8c936c7c7a3d8561e908593dbf9710b5

1. Enrolled a face during SUW
2. Pressed back on fingerprint enroll intro
3. Verified that the next button's text is chnaged to done
4. The done action launches the fingerprint enroll intro flow.

Change-Id: Id5d652257445e40426ade3d396a31ebf936cc348
2021-10-25 15:08:51 -07:00
Joshua Mccloskey
8a52ec7153 Tap fp find sensor animation goes to next page.
Test: Tapping the find sensor animation in UDFPS enrollment now goes to
the next page.
Fixes: 199195946

Change-Id: I9d380927a9107ce3d6d90e07fb98e1928020dc8c
2021-10-14 14:56:26 -07:00
Curtis Belmonte
a9c582262e Make biometric setting toggles show dynamic auth types
Updates the preference toggles shown on the combined biometric settings
screen to indicate which types of biometric sensor (e.g. face and/or
fingerprint) each setting applies to. This is done by checking the
maximum registered strength for each type of sensor.

Test: Manual

Bug: 193714498
Bug: 201306569
Change-Id: I1f27bbe1fdd172ebc899c3c5f1daef9095b338bd
2021-09-27 15:55:43 -07:00
Curtis Belmonte
e72cab0e2e Support "less secure" info row on face enroll intro
Adds an info row that can be configured to show on the face enroll
introduction screen, indicating the relative security of face compared
to other authentication methods (e.g. pattern or PIN).

Test: Manual

Bug: 196254139
Change-Id: I956083887945ac97d15722b23a14ac458568dd9e
2021-09-23 22:35:53 +00:00
Curtis Belmonte
73855e0a59 Support configurable multi-stage UDFPS enrollment
Implements multi-stage enrollment for UDFPS. This implementation
supports both highlighting the progress bar when a help message is
received and configuring the progress thresholds between enroll stages
via an XML resource.

Test: Manual

Bug: 198928407
Bug: 200076382
Change-Id: Ied4dbcb4a523f477c5ca1a9146d24751c6473f35
2021-09-21 10:58:24 -07:00
Joe Bolinger
5668781507 Merge "Add string ids to the result bundle for parental consent." into sc-qpr1-dev am: 63786513fc
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/15759863

Change-Id: Ieb86f16d8789c73e734085084a70c64d2bd6b50e
2021-09-14 22:23:24 +00:00
Joe Bolinger
63786513fc Merge "Add string ids to the result bundle for parental consent." into sc-qpr1-dev 2021-09-14 22:08:23 +00:00
Joe Bolinger
8b3792d65b Add string ids to the result bundle for parental consent.
Bug: 198491515
Test: N/A (builds)
Change-Id: Id120f5f7a7e923f9d3ce7dd38d3e5214296ca219
2021-09-14 19:54:27 +00:00
Curtis Belmonte
e7849fb0dc RESTRICT AUTOMERGE Support UDFPS multi-stage enrollment
Adds support for showing multiple stages during UDFPS enrollment:
1. Initial touch & center enroll
2. Guided enroll (or continued center enroll for a11y)
3. Fingertip enroll
4. Edge enroll

Test: Manual

Bug: 198858684
Change-Id: I6646db9038d236eca6d6d62e1c7ddf7649e4945e
Merged-In: Ifda20133f1ee90c9e1612e9066c19efbb6ffc9cd
Merged-In: Ic12b85bd6f8f1d4068952eb83bcc8a1df21f2e8e
2021-09-06 18:56:38 -07:00
TreeHugger Robot
041d8cdb5a Merge "Fix crash when error messages are triggered due to configuration changes." into sc-v2-dev 2021-09-01 18:08:51 +00:00
Joe Bolinger
dbac832ae9 Fix crash when error messages are triggered due to configuration changes.
Bug: 197265282
Test: Manaul (start enrollment and switch active display)
Change-Id: Id83ea58dc6b06461f48cddf90e85cc682ac2451c
2021-08-27 15:24:16 -07:00
Joe Bolinger
f78cec292c Remove sliceable attribute from biometric preference controllers.
This removes the top-level UI switch on some of the boolean preference settings.

Bug: 193438173
Test: atest com.android.settings.biometrics
Change-Id: If1cd2cb9ae456021fcdf0efc5002db4a083b9689
2021-08-20 18:42:50 +00:00
Joe Bolinger
c78af9a272 Merge "Refresh biometric preference controllers on lifecycle events." into sc-dev 2021-08-13 01:08:16 +00:00
Kevin Chyn
570540b15c Do not show work profile strings for parent-managed enrollment
Work profiles and parental management both utilize the
DevicePolicyManager KEYGUARD_DISABLE_* flags. This CL ensures that
work profile strings are only shown for work profiles, and not
parent-managed devices.

Bug: 196060286
Bug: 196443744
Test: Set up child account, then enroll from Settings > Security
Change-Id: Ib5ed1d63dd5d58ac64caf30010e340ac7784c38f
2021-08-12 15:56:38 -07:00
Kevin Chyn
715e337af8 Add debugReason to BiometricUtils#tryStartingNextBiometricEnroll
Bug: 196060286
Test: adb shell am start -a android.settings.BIOMETRIC_ENROLL
Change-Id: Ib157dd916b1cfd2238cf6844a970d70cbf56faa6
2021-08-11 16:35:35 -07:00
Joe Bolinger
9e9f1249d4 Refresh biometric preference controllers on lifecycle events.
Fix: 195961101
Test: make RunSettingsRoboTests
Test: manual (enroll via settings and verify preferences enabled after enrolling)

Change-Id: Ie50cd862a42c96eb95f2156a33f34748b2b8b50c
2021-08-10 13:29:05 -07:00
Curtis Belmonte
4cb6d12b55 Merge "Make face education handle timeout result correctly" into sc-dev 2021-08-10 00:06:17 +00:00
Curtis Belmonte
ea07bb8d2f Make face education handle timeout result correctly
Ensures that a result code of RESULT_TIMEOUT always causes the face
enroll education screen to finish and propagate the result.

Test: Lock and unlock screen at each stage of face enrollment

Fixes: 194857793
Change-Id: Ie4b09235f923c8a40de18878b0727f166112140f
2021-08-09 14:12:45 -07:00
Joe Bolinger
c11e01f39d Fix extra password confirm prompts during managed setup.
Managed accounts may set the pin/pattern before enrollment begins.

Fix: 191608999
Test: atest BiometricEnrollActivityTest
Change-Id: I4065989ecc26ce72ffd0e06e7c6e68029a11908f
2021-08-05 11:08:48 -07:00
Joe Bolinger
d5ea0ffe67 Skip enrollment when unicorn account is launched by setup wizard.
Bug: 194244555
Test: manual
Change-Id: Id310c5e4dec1b1c5262c9703259223ce21b1da61
2021-07-30 12:51:02 -07:00
Joe Bolinger
91d7545826 Limit biometric enrollments when Unicorn account is present.
This prevents biometric enrollment from happening after consent
has been obtained and is being managed by family link.

Note that this requires a corresponding change the setup wizard app
to work in most cases.

Bug: 193577587
Test: manual (enroll then relaunch SuW and repeat)
Change-Id: If260e49f38a141931d7f3362c1faf80ee7790232
2021-07-29 15:43:04 -07:00
Joe Bolinger
61d998406d Use RestrictedPreference for all biometric settings.
Fix hardcoded preference key in settings controller.

Fix: 194708564
Bug: 194246380
Test: manual
Test: make RunSettingsRoboTests
Change-Id: I86bdd40fd848c5ba2d39acfde4771f5969e640d1
2021-07-26 18:36:32 -07:00
Curtis Belmonte
43f2be2059 Use correct user ID for face bypass pref controller
Ensures that the lockscreen bypass preference toggle shown on the face
unlock settings screen always uses the correct user ID. This fixes an
issue where the preference toggle for a guest user would use the
primary user's setting when multiple biometrics are supported.

Test: Manual:
1. Turn on Settings > System > Multiple users > Use multiple users
2. Add a guest account and switch to it
3. Enroll a face for Face Unlock on the guest account
4. From the Face Unlock settings screen, toggle "Skip lock screen"
5. Ensure that face bypasses lock screen iff this toggle is on
6. Switch back to the owner account and repeat steps 3-5

Fixes: 193488905
Change-Id: I2da4ce466fe0446cccc9119c90bd322daf627339
2021-07-24 09:20:08 -07:00
Curtis Belmonte
0a8916a808 Move multi-biometric logic to base fp intro activity
Ensures that the relevant multi-biometric logic--specifically, logic to
ensure that fingerprint enroll is shown exactly once after face
enroll--is present in both the SUW and non-SUW versions of the
fingerprint enroll introduction activity. This fixes an issue where
fingerprint enroll would occur multiple times when triggering the
multi-biometric enroll flow outside of SUW (e.g. via an enroll intent
action).

Test: CTS-Verifier: Biometric Tests > 2a: Strong Biometrics + Crypto

Bug: 193601823
Change-Id: I17c09e9a72ced2f23b0b279ea51a6aa209668485
2021-07-20 13:32:13 -07:00
Curtis Belmonte
6850b70226 Merge "Ensure fingerprint setup is shown once after face" into sc-dev 2021-07-19 19:44:40 +00:00
Curtis Belmonte
c6ced3fb21 Fail fingerprint enroll with error if HAT is null
Fingerprint enroll expects a non-null HAT. If we don't have one, rather
than crashing or stalling out enrollment, fail fast with an error.

Test: Manual

Bug: 193811614
Change-Id: Ifb791e19430e33cb82566e4916ab1a7b997b32ff
2021-07-16 14:35:25 -07:00
Curtis Belmonte
b61478c30c Ensure fingerprint setup is shown once after face
Adds an activity result extra during multi-biometric enroll that
ensures fingerprint setup will not be repeated multiple times if
explicitly finished or skipped by the user. Also updates various
activities in the stack to ensure that they handle all possible result
codes correctly and pass along result data.

Test: Manually skip and complete at each stage of multi-biometric enroll
Test: Manually test single-biometric enroll flows for SUW and Settings

Fixes: 193601823
Change-Id: Ic5a8306068eb4c32009f146ad6fff824fde25a11
2021-07-15 17:00:43 -07:00
TreeHugger Robot
cf1f67e54f Merge "Limit searchability of combined biometric Settings" into sc-dev 2021-07-15 19:21:56 +00:00
Curtis Belmonte
effa67a8bb Limit searchability of combined biometric Settings
Ensures that the combined biometric settings pages shown in Settings are
not indexed for search on devices without multiple biometric sensors.

Test: Manually tested on devices with and without multiple biometrics

Fixes: 193704179
Change-Id: I007b5d2a0191cb61454e5ae0f411d4c594536fc5
2021-07-15 10:51:35 -07:00
Curtis Belmonte
1b69dece94 Don't also skip fingerprint in SUW when skipping face
Ensures that each biometric enroll intro activity handles an activity
result of RESULT_SKIP by calling the appropriate skip handler, rather
than just finishing. This fixes an issue where skipping face setup from
some Setup Wizard states would skip fingerprint setup as well.

Test: Manually skipped face setup from each screen during SUW

Bug: 193367620
Change-Id: If9ef9f19f8e967093f17dde98093a506400d7c09
2021-07-15 09:24:23 -07:00
Curtis Belmonte
68c12f2e04 Add "eyes open" setting message to face enroll intro
Adds an additional message about the "Require eyes to be open" setting
for Face Unlock to the intro/consent screen of enrollment, gated by a
config flag.

Test: Manual

Bug: 192272785
Change-Id: Idcd2395a290b74f4578898fdfebd05b81cd74075
2021-07-12 17:05:45 -07:00
TreeHugger Robot
493db88bf4 Merge "Fix landscape to reverse landscape issue" into sc-dev 2021-07-02 23:49:36 +00:00
Mill Chen
7f2496219f Fix landscape to reverse landscape issue
Fingerprint enrollment page needs to display different types of layout
for both landscape mode and reverse landscape mode. However
onConfigurationChanged doesn't get called when landscape mode rotates to
reverse landscape mode directly, that causes it displays a wrong layout
in the both landscape and reverse landscape modes.

Trying to monitor rotation event and checking if the case that directly
turns landscape mode to reverse landscape mode happens, if so, reCreate
method will get called to re-lay out the page. There will be a flicker
problem happening in re-laying out the page but this solution still
works for users to have the correct layout.

Fix: 186372522
Test: manual test
1) Navigate to fingerprint enrollment page
2) Rotate the screen from landscape mode to reverse landscape mode
3) Observe the page and see if it has a correct layout

Change-Id: Ie94f43a6546f453c10ae9f1c3ba83e1178784950
2021-07-03 06:40:25 +08:00
TreeHugger Robot
59b82fad2f Merge "Only launchHandoffToParent in SUW" into sc-dev 2021-07-02 20:14:33 +00:00
Kevin Chyn
c702e1bfba Only launchHandoffToParent in SUW
Settings flow does not need to show this screen

Fixes: 192586840
Test: adb shell am start -a android.settings.BIOMETRIC_ENROLL --ez require_consent true --ez skip_return_to_parent <true/false>
Test: adb shell am start -a android.settings.BIOMETRIC_ENROLL --ez require_consent true
Test: atest com.android.settings.biometrics.ParentalConsentHelperTest

Change-Id: Ic2edbb5ec9693d05c89206d49249f59fd968aa2f
2021-07-02 12:04:06 -07:00
Joshua Mccloskey
f68524f421 Merge "Refactored bad_calibration string" into sc-dev 2021-07-02 14:14:09 +00:00
TreeHugger Robot
65c9b03fb5 Merge "Fix multiple biometrics enrollment flow" into sc-dev 2021-07-02 05:26:18 +00:00
Mill Chen
e24255fe7e Fix multiple biometrics enrollment flow
Suppose both face auth and fingerprint auth exist in a device, the setup
flow will skip fingerprint enrollment when a user skips to register
face data on the face enrollment education page. Updated the skip button
method and make the flow move on to fingerprint enrollment if a use
doesn't want to register face data.

Fix: 186084024
Test: manual verified
1) Reset device and start from SUW
2) Press skip button on the face unlock education page
3) The next flow should be fingerprint enrollment intro page

Change-Id: I037ae68f39f5fdbf62ea95b998621c7f7df31b43
2021-07-01 14:45:33 +08:00
Joe Bolinger
47e8ddbdb9 Prevent finishing early on single sensor devices.
Fixes regression from commit c358adad56.

Fix: 192420564
Fix: 188847063

Test: manual enroll face & fingerprint via setup wizard (on fp, face, & fp+face device variants)
Change-Id: If7027e4d0ddf9d73daf91f174f237e4eb1621ea7
2021-06-30 14:21:04 -07:00
Joe Bolinger
c17876365a Revert "Revert "Return enrollment consent status to caller.""
This reverts commit c358adad56.

Reason for revert: Applying original change with additional change for single sensor devices.

Bug: 192420564
Bug: 188847063

Test: manual enroll face & fingerprint via setup wizard (on fp, face, & fp+face device variants)

Change-Id: Idfaaa2b6f4611056f9999325bac8401e28a7510b
2021-06-30 14:16:56 -07:00
Joe Bolinger
a86c8be5fa Merge "Revert "Return enrollment consent status to caller."" into sc-dev 2021-06-30 20:10:58 +00:00
Joshua Mccloskey
b182a4fb5c Refactored bad_calibration string
Test: Manual
Bug: 192105305
Change-Id: I82b0965459537c940b269636b8277af89b5ad284
2021-06-30 09:16:20 -07:00
bsears
c358adad56 Revert "Return enrollment consent status to caller."
This reverts commit eb1dac69f0.

Reason for revert: Based on bisection, this CL is the root cause for bug 192420564, which breaks Setup Wizard.

Bug: 192420564
Change-Id: I8d9aee7fe2415e134fcc981b0548bd9ce300db55
2021-06-30 14:53:13 +00:00
TreeHugger Robot
ca61c3919e Merge "Fix buttons and icons for fingerprint enroll intro" into sc-dev 2021-06-29 22:20:03 +00:00
Curtis Belmonte
218187bcce Fix buttons and icons for fingerprint enroll intro
Updates the labels of buttons and the colors of icons shown on the
fingerprint enroll intro screen to be consistent with the face enroll
intro screen and match the latest mocks.

Note that this commit removes some unused strings but does not add any
new ones requiring l10n.

Test: Manually tested face enroll from Setup Wizard and Settings

Fixes: 192381823
Change-Id: Id991d4f29d6de82acd538f1853bc8a5e50cd2637
2021-06-29 14:05:27 -07:00
Jan Tomljanovic
2b8678c5d4 Merge "Enable controllers to use a custom key." into sc-dev 2021-06-29 16:02:55 +00:00