[Biometric Onboarding & Edu] Support check enrolled fingerprint

- Add a new PreferenceItem for check enrolled fingerprint
- Create a new DialogFragment for the check enrolled
  fingerprint with functions:
  - request an authentication to FingerprintManager
  - highlight the item when a authentication successes
  - show error text when authentication fails
  - close the authentication

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

Change-Id: I90637e4ec20ea46e6f530ffd7ba79df9c31eda6b
This commit is contained in:
Shawn Lin
2024-11-29 06:08:06 +00:00
parent ba8348c6a2
commit 4bfbb8782a
7 changed files with 596 additions and 1 deletions

View File

@@ -0,0 +1,47 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
~ Copyright (C) 2024 The Android Open Source Project
~
~ Licensed under the Apache License, Version 2.0 (the "License");
~ you may not use this file except in compliance with the License.
~ You may obtain a copy of the License at
~
~ http://www.apache.org/licenses/LICENSE-2.0
~
~ Unless required by applicable law or agreed to in writing, software
~ distributed under the License is distributed on an "AS IS" BASIS,
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
~ See the License for the specific language governing permissions and
~ limitations under the License.
-->
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<com.android.settings.biometrics.fingerprint.UdfpsCheckEnrolledView
android:id="@+id/udfps_check_enrolled_view"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true">
<!-- Fingerprint -->
<ImageView
android:id="@+id/udfps_fingerprint_sensor_view"
android:contentDescription="@string/accessibility_fingerprint_label"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<TextView
android:id="@+id/udfps_fingerprint_sensor_message"
android:layout_marginTop="80dp"
android:layout_below="@id/udfps_fingerprint_sensor_view"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:textSize="18sp"
android:textColor="@android:color/white"
android:text="@string/fingerprint_check_enroll_touch_sensor"/>
</com.android.settings.biometrics.fingerprint.UdfpsCheckEnrolledView>
</RelativeLayout>