[Biometric Onboarding & Edu] Update Set up Fingerprint/Face Unlock page

Update icons, strings and layouts for new UX design

Bug: 370940762
Test: manual:
      Pre condition - no fingerprint/face enrolled
      For FP: Go Settings>Security & privacy>Device unlock>Fingerprint unlock
      For Face: Go Settings>Security & privacy>Device unlock>Face unlock
Test: atest FaceEnrollIntroductionTest
Flag: com.android.settings.flags.biometrics_onboarding_education
Change-Id: Iaee6792d1a27be8fa4b443f783a47a3715b6d3a1
diff --git a/res-product/values/strings.xml b/res-product/values/strings.xml
index d5ef1c8..32e545b 100644
--- a/res-product/values/strings.xml
+++ b/res-product/values/strings.xml
@@ -89,6 +89,12 @@
     <string name="security_settings_face_enroll_introduction_message_class3" product="tablet">Use your face to unlock your tablet or for authentication in apps, like when you sign in to apps or approve a purchase</string>
     <!-- Subtitle shown on the face enrollment introduction screen with in-app authentication. [CHAR LIMIT=NONE] -->
     <string name="security_settings_face_enroll_introduction_message_class3" product="device">Use your face to unlock your device or for authentication in apps, like when you sign in to apps or approve a purchase</string>
+    <!-- Subtitle shown on the face enrollment introduction screen with in-app authentication. [CHAR LIMIT=NONE] -->
+    <string name="security_settings_face_enroll_introduction_message_class3_2" product="default"></string>
+    <!-- Subtitle shown on the face enrollment introduction screen with in-app authentication. [CHAR LIMIT=NONE] -->
+    <string name="security_settings_face_enroll_introduction_message_class3_2" product="tablet"></string>
+    <!-- Subtitle shown on the face enrollment introduction screen with in-app authentication. [CHAR LIMIT=NONE] -->
+    <string name="security_settings_face_enroll_introduction_message_class3_2" product="device"></string>
     <!-- Introduction detail message shown in face enrollment dialog when asking for parental consent [CHAR LIMIT=NONE]-->
     <string name="security_settings_face_enroll_introduction_consent_message_0" product="default">Allow your child to use their face to unlock their phone</string>
     <!-- Introduction detail message shown in face enrollment dialog when asking for parental consent [CHAR LIMIT=NONE]-->
@@ -107,6 +113,18 @@
     <string name="security_settings_face_enroll_introduction_consent_message" product="tablet">Using your child\u2019s face to unlock their tablet may be less secure than a strong pattern or PIN.</string>
     <!-- Introduction detail message shown in face enrollment dialog when asking for parental consent [CHAR LIMIT=NONE]-->
     <string name="security_settings_face_enroll_introduction_consent_message" product="device">Using your child\u2019s face to unlock their device may be less secure than a strong pattern or PIN.</string>
+    <!-- Message shown in Secure and helpful section in face enrollment introduction page. [CHAR LIMIT=NONE] -->
+    <string name="security_settings_face_enroll_introduction_secure_and_helpful_message_1" product="default"></string>
+    <!-- Message shown in Secure and helpful section in face enrollment introduction page. [CHAR LIMIT=NONE] -->
+    <string name="security_settings_face_enroll_introduction_secure_and_helpful_message_1" product="tablet"></string>
+    <!-- Message shown in Secure and helpful section in face enrollment introduction page. [CHAR LIMIT=NONE] -->
+    <string name="security_settings_face_enroll_introduction_secure_and_helpful_message_1" product="device"></string>
+    <!-- Message shown in Secure and helpful section in face enrollment introduction page. [CHAR LIMIT=NONE] -->
+    <string name="security_settings_face_enroll_introduction_secure_and_helpful_message_2" product="default"></string>
+    <!-- Message shown in Secure and helpful section in face enrollment introduction page. [CHAR LIMIT=NONE] -->
+    <string name="security_settings_face_enroll_introduction_secure_and_helpful_message_2" product="tablet"></string>
+    <!-- Message shown in Secure and helpful section in face enrollment introduction page. [CHAR LIMIT=NONE] -->
+    <string name="security_settings_face_enroll_introduction_secure_and_helpful_message_2" product="device"></string>
     <!-- Message on the face enrollment introduction page that provides information about what could cause the phone to unlock. [CHAR LIMIT=NONE] -->
     <string name="security_settings_face_enroll_introduction_info_looking" product="default"></string>
     <!-- Message on the face enrollment introduction page that provides information about what could cause the phone to unlock. [CHAR LIMIT=NONE] -->
@@ -161,6 +179,12 @@
     <string name="security_settings_face_enroll_introduction_control_message" product="tablet"></string>
     <!-- Message on the face enrollment introduction page that explains privacy controls for face unlock [CHAR LIMIT=NONE] -->
     <string name="security_settings_face_enroll_introduction_control_message" product="device"></string>
+    <!-- Message on the face enrollment introduction page that explains privacy controls for face unlock [CHAR LIMIT=NONE] -->
+    <string name="security_settings_face_enroll_introduction_control_message_2" product="default"></string>
+    <!-- Message on the face enrollment introduction page that explains privacy controls for face unlock [CHAR LIMIT=NONE] -->
+    <string name="security_settings_face_enroll_introduction_control_message_2" product="tablet"></string>
+    <!-- Message on the face enrollment introduction page that explains privacy controls for face unlock [CHAR LIMIT=NONE] -->
+    <string name="security_settings_face_enroll_introduction_control_message_2" product="device"></string>
     <!-- Message on the face enrollment introduction page that explains privacy controls for face unlock when asking for parental consent. [CHAR LIMIT=NONE] -->
     <string name="security_settings_face_enroll_introduction_control_consent_message" product="default"></string>
     <!-- Message on the face enrollment introduction page that explains privacy controls for face unlock when asking for parental consent. [CHAR LIMIT=NONE] -->
@@ -193,6 +217,8 @@
     <string name="security_settings_face_settings_footer_class3_attention_not_supported" product="device">Use your face to unlock your device or verify it\u2019s you, like when you sign in to apps or approve a purchase.\n\nKeep in mind:\nYou can only have one face set up at a time. To add another face, delete the current one.\n\nLooking at the device can unlock it when you don\u2019t intend to.\n\nYour device can be unlocked by someone else if it\u2019s held up to your face, even if your eyes are closed.\n\nYour device can be unlocked by someone who looks a lot like you, like an identical sibling.</string>
     <!-- Introduction detail message shown in fingerprint enrollment dialog [CHAR LIMIT=NONE]-->
     <string name="security_settings_fingerprint_enroll_introduction_v3_message">Use your fingerprint to unlock your <xliff:g id="deviceName" example="Pixel">%s</xliff:g> or verify it\u2019s you, like when you sign in to apps or approve a purchase</string>
+    <!-- Introduction detail message shown in fingerprint enrollment dialog [CHAR LIMIT=NONE]-->
+    <string name="security_settings_fingerprint_enroll_introduction_v3_message_2">Use your fingerprints to unlock your <xliff:g id="deviceName" example="Pixel">%s</xliff:g> or verify it\u2019s you in apps</string>
     <!-- Introduction detail message shown in fingerprint enrollment dialog when asking for parental consent [CHAR LIMIT=NONE]-->
     <string name="security_settings_fingerprint_enroll_introduction_consent_message" product="default">Allow your child to use their fingerprint to unlock their phone or verify it\u2019s them. This happens when they sign in to apps, approve a purchase, and more.</string>
     <!-- Introduction detail message shown in fingerprint enrollment dialog when asking for parental consent [CHAR LIMIT=NONE]-->
@@ -241,6 +267,18 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" product="tablet">Your child\u2019s tablet can be unlocked when they don\u2019t intend to, like if someone holds it up to their finger.</string>
     <!-- Introduction description message shown in fingerprint enrollment introduction screen in setup wizard when asking for parental consent. [CHAR LIMIT=NONE] -->
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_5" product="device">Your child\u2019s device can be unlocked when they don\u2019t intend to, like if someone holds it up to their finger.</string>
+    <!-- Introduction description message shown in fingerprint enrollment introduction screen in setup wizard. [CHAR LIMIT=NONE] -->
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_7" product="default"></string>
+    <!-- Introduction description message shown in fingerprint enrollment introduction screen in setup wizard. [CHAR LIMIT=NONE] -->
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_7" product="tablet"></string>
+    <!-- Introduction description message shown in fingerprint enrollment introduction screen in setup wizard. [CHAR LIMIT=NONE] -->
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_7" product="device"></string>
+    <!-- Introduction description message shown in fingerprint enrollment introduction screen in setup wizard. [CHAR LIMIT=NONE] -->
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_8" product="default"></string>
+    <!-- Introduction description message shown in fingerprint enrollment introduction screen in setup wizard. [CHAR LIMIT=NONE] -->
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_8" product="tablet"></string>
+    <!-- Introduction description message shown in fingerprint enrollment introduction screen in setup wizard. [CHAR LIMIT=NONE] -->
+    <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_8" product="device"></string>
     <!-- Message text only shown in fingerprint security settings home screen. (tablet) [CHAR LIMIT=NONE]-->
     <string name="security_settings_fingerprint_v2_home_screen_text" product="tablet">Use your fingerprint to unlock your tablet or verify it\u2019s you, like when you sign in to apps</string>
     <!-- Message text only shown in fingerprint security settings home screen. (device) [CHAR LIMIT=NONE]-->
diff --git a/res/drawable/ic_eyeglasses.xml b/res/drawable/ic_eyeglasses.xml
new file mode 100644
index 0000000..c35d7b3
--- /dev/null
+++ b/res/drawable/ic_eyeglasses.xml
@@ -0,0 +1,26 @@
+<!--
+  ~ 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.
+  -->
+
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+        android:width="24dp"
+        android:height="24dp"
+        android:viewportWidth="960"
+        android:viewportHeight="960"
+        android:tint="?attr/colorControlNormal">
+    <path
+        android:fillColor="@android:color/white"
+        android:pathData="M274,600Q305,600 329.5,582Q354,564 364,535L379,489Q395,441 371,400.5Q347,360 302,360L161,360L180,517Q185,552 211.5,576Q238,600 274,600ZM686,600Q722,600 748.5,576Q775,552 780,517L799,360L659,360Q614,360 590,401Q566,442 582,490L596,535Q606,564 630.5,582Q655,600 686,600ZM274,680Q208,680 158.5,636.5Q109,593 101,527L80,360L40,360L40,280L302,280Q346,280 382.5,301.5Q419,323 440,360L521,360Q542,323 578.5,301.5Q615,280 659,280L920,280L920,360L880,360L859,527Q851,593 801.5,636.5Q752,680 686,680Q629,680 583.5,647.5Q538,615 520,561L505,516Q503,509 501,501.5Q499,494 497,480L463,480Q461,492 459,499.5Q457,507 455,514L440,560Q422,614 376.5,647Q331,680 274,680Z"/>
+</vector>
diff --git a/res/drawable/ic_familiar_face_and_zone.xml b/res/drawable/ic_familiar_face_and_zone.xml
new file mode 100644
index 0000000..dbef199
--- /dev/null
+++ b/res/drawable/ic_familiar_face_and_zone.xml
@@ -0,0 +1,26 @@
+<!--
+  ~ 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.
+  -->
+
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+        android:width="24dp"
+        android:height="24dp"
+        android:viewportWidth="960"
+        android:viewportHeight="960"
+        android:tint="?attr/colorControlNormal">
+    <path
+        android:fillColor="@android:color/white"
+        android:pathData="M480,800Q346,800 253,707Q160,614 160,480Q160,346 253,253Q346,160 480,160Q614,160 707,253Q800,346 800,480Q800,614 707,707Q614,800 480,800ZM480,720Q580,720 650,650Q720,580 720,480Q720,463 717.5,446.5Q715,430 710,414Q695,417 680,418.5Q665,420 650,420Q587,420 530,396Q473,372 428,326Q400,383 351,425Q302,467 240,486Q243,584 312.5,652Q382,720 480,720ZM256,394Q300,371 323,340.5Q346,310 368,268Q330,288 301,320.5Q272,353 256,394ZM380,560Q363,560 351.5,548.5Q340,537 340,520Q340,503 351.5,491.5Q363,480 380,480Q397,480 408.5,491.5Q420,503 420,520Q420,537 408.5,548.5Q397,560 380,560ZM650,340Q656,340 662,340Q668,340 674,339Q641,294 590.5,267Q540,240 480,240Q474,240 468,240Q462,240 457,241Q496,286 539.5,313Q583,340 650,340ZM580,560Q563,560 551.5,548.5Q540,537 540,520Q540,503 551.5,491.5Q563,480 580,480Q597,480 608.5,491.5Q620,503 620,520Q620,537 608.5,548.5Q597,560 580,560ZM40,240L40,120Q40,87 63.5,63.5Q87,40 120,40L240,40L240,120L120,120Q120,120 120,120Q120,120 120,120L120,240L40,240ZM240,920L120,920Q87,920 63.5,896.5Q40,873 40,840L40,720L120,720L120,840Q120,840 120,840Q120,840 120,840L240,840L240,920ZM720,920L720,840L840,840Q840,840 840,840Q840,840 840,840L840,720L920,720L920,840Q920,873 896.5,896.5Q873,920 840,920L720,920ZM840,240L840,120Q840,120 840,120Q840,120 840,120L720,120L720,40L840,40Q873,40 896.5,63.5Q920,87 920,120L920,240L840,240ZM457,241Q457,241 457,241Q457,241 457,241Q457,241 457,241Q457,241 457,241Q457,241 457,241Q457,241 457,241Q457,241 457,241Q457,241 457,241ZM368,268Q368,268 368,268Q368,268 368,268Q368,268 368,268Q368,268 368,268Z"/>
+</vector>
\ No newline at end of file
diff --git a/res/drawable/ic_privacy_tip.xml b/res/drawable/ic_privacy_tip.xml
new file mode 100644
index 0000000..8f34eb6
--- /dev/null
+++ b/res/drawable/ic_privacy_tip.xml
@@ -0,0 +1,10 @@
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+        android:width="24dp"
+        android:height="24dp"
+        android:viewportWidth="960"
+        android:viewportHeight="960"
+        android:tint="?attr/colorControlNormal">
+    <path
+        android:fillColor="@android:color/white"
+        android:pathData="M440,680L520,680L520,440L440,440L440,680ZM480,360Q497,360 508.5,348.5Q520,337 520,320Q520,303 508.5,291.5Q497,280 480,280Q463,280 451.5,291.5Q440,303 440,320Q440,337 451.5,348.5Q463,360 480,360ZM480,880Q341,845 250.5,720.5Q160,596 160,444L160,200L480,80L800,200L800,444Q800,596 709.5,720.5Q619,845 480,880ZM480,796Q584,763 652,664Q720,565 720,444L720,255L480,165L240,255L240,444Q240,565 308,664Q376,763 480,796ZM480,480Q480,480 480,480Q480,480 480,480L480,480L480,480L480,480L480,480Q480,480 480,480Q480,480 480,480Z"/>
+</vector>
diff --git a/res/drawable/ic_security_privacy_safe.xml b/res/drawable/ic_security_privacy_safe.xml
new file mode 100644
index 0000000..99aeaef
--- /dev/null
+++ b/res/drawable/ic_security_privacy_safe.xml
@@ -0,0 +1,10 @@
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+        android:width="24dp"
+        android:height="24dp"
+        android:viewportWidth="960"
+        android:viewportHeight="960"
+        android:tint="?attr/colorControlNormal">
+    <path
+        android:fillColor="@android:color/white"
+        android:pathData="M426,608L662,376L606,320L426,496L354,426L298,482L426,608ZM480,880Q473,880 466.5,878.5Q460,877 454,874Q306,798 233,685.5Q160,573 160,412L160,248Q160,222 174.5,201Q189,180 213,172L453,86Q460,84 466.5,82Q473,80 480,80Q489,80 507,86L747,172Q771,180 785.5,200.5Q800,221 800,247L800,412Q800,573 725.5,686Q651,799 505,874Q499,877 493,878.5Q487,880 480,880ZM480,797Q601,731 660.5,638.5Q720,546 720,412L720,247Q720,247 720,247Q720,247 720,247L480,161Q480,161 480,161Q480,161 480,161L240,247Q240,247 240,247Q240,247 240,247L240,412Q240,546 299.5,639Q359,732 480,797ZM480,479Q480,479 480,479Q480,479 480,479L480,479Q480,479 480,479Q480,479 480,479L480,479Q480,479 480,479Q480,479 480,479L480,479Q480,479 480,479Q480,479 480,479L480,479Q480,479 480,479Q480,479 480,479Z"/>
+</vector>
\ No newline at end of file
diff --git a/res/layout/face_enroll_introduction_2.xml b/res/layout/face_enroll_introduction_2.xml
new file mode 100644
index 0000000..cbc14bc
--- /dev/null
+++ b/res/layout/face_enroll_introduction_2.xml
@@ -0,0 +1,334 @@
+<?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.
+  -->
+
+<com.google.android.setupdesign.GlifLayout
+    xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:app="http://schemas.android.com/apk/res-auto"
+    style="?attr/face_layout_theme"
+    android:id="@+id/setup_wizard_layout"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"
+    app:sudDescriptionText="@string/security_settings_face_enroll_introduction_message">
+
+    <LinearLayout
+        style="@style/SudContentFrame"
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:clipChildren="false"
+        android:clipToPadding="false"
+        android:orientation="vertical">
+
+        <com.google.android.setupdesign.view.RichTextView
+            android:id="@+id/error_text"
+            style="@style/SudDescription.Glif"
+            android:layout_width="match_parent"
+            android:layout_height="wrap_content"
+            android:visibility="gone"/>
+
+        <FrameLayout
+            android:layout_width="match_parent"
+            android:layout_height="wrap_content">
+
+            <ImageView
+                style="@style/SudContentIllustration"
+                android:layout_width="match_parent"
+                android:layout_height="match_parent"
+                android:contentDescription="@null"
+                android:src="@drawable/face_enroll_intro_illustration"
+                android:layout_marginBottom="@dimen/face_enroll_intro_illustration_margin_bottom"/>
+
+        </FrameLayout>
+
+        <!-- Contains the extra information text at the bottom -->
+        <LinearLayout
+            android:layout_width="match_parent"
+            android:layout_height="wrap_content"
+            android:orientation="vertical">
+
+            <!-- Secure and helpful -->
+            <TextView
+                android:layout_width="match_parent"
+                android:layout_height="wrap_content"
+                style="@style/BiometricEnrollIntroTitle"
+                android:text="@string/security_settings_fingerprint_enroll_introduction_footer_title_3"/>
+
+            <Space
+                android:layout_width="wrap_content"
+                android:layout_height="16dp"/>
+
+            <LinearLayout
+                android:layout_width="match_parent"
+                android:layout_height="wrap_content"
+                android:orientation="horizontal">
+
+                <ImageView
+                    android:id="@+id/icon_security_privacy_safe"
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:contentDescription="@null"
+                    android:background="@drawable/ic_security_privacy_safe"/>
+                <Space
+                    android:layout_width="16dp"
+                    android:layout_height="wrap_content"/>
+                <TextView
+                    android:id="@+id/footer_message_7"
+                    android:layout_width="match_parent"
+                    android:layout_height="wrap_content"
+                    android:text="@string/security_settings_face_enroll_introduction_secure_and_helpful_message_1"
+                    style="@style/BiometricEnrollIntroMessage" />
+            </LinearLayout>
+
+            <Space
+                android:layout_width="wrap_content"
+                android:layout_height="16dp"/>
+
+            <LinearLayout
+                android:layout_width="match_parent"
+                android:layout_height="wrap_content"
+                android:orientation="horizontal">
+
+                <ImageView
+                    android:id="@+id/icon_privacy_tip"
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:contentDescription="@null"
+                    android:background="@drawable/ic_privacy_tip"/>
+                <Space
+                    android:layout_width="16dp"
+                    android:layout_height="wrap_content"/>
+                <TextView
+                    android:id="@+id/footer_message_8"
+                    android:layout_width="match_parent"
+                    android:layout_height="wrap_content"
+                    android:text="@string/security_settings_face_enroll_introduction_secure_and_helpful_message_2"
+                    style="@style/BiometricEnrollIntroMessage" />
+            </LinearLayout>
+
+            <Space
+                android:layout_width="wrap_content"
+                android:layout_height="16dp"/>
+
+            <!-- Keep in mind -->
+            <TextView
+                android:layout_width="match_parent"
+                android:layout_height="wrap_content"
+                style="@style/BiometricEnrollIntroTitle"
+                android:text="@string/security_settings_face_enroll_introduction_info_title" />
+
+            <Space
+                android:layout_width="wrap_content"
+                android:layout_height="16dp"/>
+
+            <LinearLayout
+                android:layout_width="match_parent"
+                android:layout_height="wrap_content"
+                android:orientation="horizontal">
+
+                <ImageView
+                    android:id="@+id/icon_glasses"
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:background="@drawable/ic_eyeglasses"/>
+                <Space
+                    android:layout_width="16dp"
+                    android:layout_height="wrap_content"/>
+                <TextView
+                    android:id="@+id/info_message_glasses"
+                    android:layout_width="match_parent"
+                    android:layout_height="wrap_content"
+                    style="@style/BiometricEnrollIntroMessage" />
+            </LinearLayout>
+
+            <Space
+                android:layout_width="wrap_content"
+                android:layout_height="16dp"/>
+
+            <LinearLayout
+                android:layout_width="match_parent"
+                android:layout_height="wrap_content"
+                android:orientation="horizontal">
+
+                <ImageView
+                    android:id="@+id/icon_looking"
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:background="@drawable/ic_face_enroll_introduction_visibility"/>
+                <Space
+                    android:layout_width="16dp"
+                    android:layout_height="wrap_content"/>
+                <TextView
+                    android:id="@+id/info_message_looking"
+                    android:layout_width="match_parent"
+                    android:layout_height="wrap_content"
+                    style="@style/BiometricEnrollIntroMessage" />
+            </LinearLayout>
+
+            <Space
+                android:layout_width="wrap_content"
+                android:layout_height="16dp"/>
+
+            <LinearLayout
+                android:id="@+id/info_row_less_secure"
+                android:layout_width="match_parent"
+                android:layout_height="wrap_content"
+                android:orientation="horizontal"
+                android:visibility="gone">
+
+                <ImageView
+                    android:id="@+id/icon_less_secure"
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:background="@drawable/ic_info_outline_24dp"/>
+                <Space
+                    android:layout_width="16dp"
+                    android:layout_height="wrap_content"/>
+                <TextView
+                    android:id="@+id/info_message_less_secure"
+                    android:layout_width="match_parent"
+                    android:layout_height="wrap_content"
+                    style="@style/BiometricEnrollIntroMessage"
+                    android:text="@string/security_settings_face_enroll_introduction_info_less_secure" />
+            </LinearLayout>
+
+            <LinearLayout
+                android:id="@+id/info_row_require_eyes"
+                android:layout_width="match_parent"
+                android:layout_height="wrap_content"
+                android:orientation="horizontal"
+                android:visibility="gone">
+
+                <ImageView
+                    android:id="@+id/icon_require_eyes"
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:background="@drawable/ic_settings_24dp"/>
+                <Space
+                    android:layout_width="16dp"
+                    android:layout_height="wrap_content"/>
+                <TextView
+                    android:id="@+id/info_message_require_eyes"
+                    android:layout_width="match_parent"
+                    android:layout_height="wrap_content"
+                    style="@style/BiometricEnrollIntroMessage" />
+            </LinearLayout>
+
+            <!-- How it works -->
+            <TextView
+                android:layout_width="match_parent"
+                android:layout_height="wrap_content"
+                style="@style/BiometricEnrollIntroTitle"
+                android:text="@string/security_settings_face_enroll_introduction_how_title" />
+
+            <Space
+                android:layout_width="wrap_content"
+                android:layout_height="16dp"/>
+
+            <LinearLayout
+                android:layout_width="match_parent"
+                android:layout_height="wrap_content"
+                android:orientation="horizontal">
+
+                <ImageView
+                    android:id="@+id/icon_familiar_face_and_zone"
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:contentDescription="@null"
+                    android:background="@drawable/ic_familiar_face_and_zone"/>
+                <Space
+                    android:layout_width="16dp"
+                    android:layout_height="wrap_content"/>
+                <TextView
+                    android:id="@+id/how_message"
+                    android:layout_width="match_parent"
+                    android:layout_height="wrap_content"
+                    style="@style/BiometricEnrollIntroMessage" />
+            </LinearLayout>
+
+            <Space
+                android:layout_width="wrap_content"
+                android:layout_height="16dp"/>
+
+            <!-- You're in control -->
+            <TextView
+                android:id="@+id/title_in_control"
+                android:layout_width="match_parent"
+                android:layout_height="wrap_content"
+                style="@style/BiometricEnrollIntroTitle" />
+
+            <Space
+                android:layout_width="wrap_content"
+                android:layout_height="16dp"/>
+
+            <LinearLayout
+                android:layout_width="match_parent"
+                android:layout_height="wrap_content"
+                android:orientation="horizontal">
+
+                <ImageView
+                    android:id="@+id/icon_trash_can"
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:contentDescription="@null"
+                    android:background="@drawable/ic_trash_can"/>
+                <Space
+                    android:layout_width="16dp"
+                    android:layout_height="wrap_content"/>
+                <TextView
+                    android:id="@+id/message_in_control"
+                    android:layout_width="match_parent"
+                    android:layout_height="wrap_content"
+                    style="@style/BiometricEnrollIntroMessage"
+                    android:paddingBottom="0dp" />
+            </LinearLayout>
+
+            <Space
+                android:layout_width="wrap_content"
+                android:layout_height="16dp"/>
+
+            <LinearLayout
+                android:layout_width="match_parent"
+                android:layout_height="wrap_content"
+                android:orientation="vertical">
+
+                <ImageView
+                    android:id="@+id/icon_link"
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:contentDescription="@null"
+                    android:background="@drawable/ic_info_outline_24dp"/>
+                <Space
+                    android:layout_width="wrap_content"
+                    android:layout_height="4dp"/>
+                <TextView
+                    android:id="@+id/message_learn_more"
+                    android:linksClickable="true"
+                    android:layout_width="match_parent"
+                    android:layout_height="wrap_content"
+                    style="@style/BiometricEnrollIntroMessage"
+                    android:paddingBottom="0dp"
+                    android:text="@string/security_settings_face_enroll_introduction_learn_more_message" />
+            </LinearLayout>
+
+            <Space
+                android:layout_width="wrap_content"
+                android:layout_height="16dp"/>
+
+        </LinearLayout>
+
+    </LinearLayout>
+
+</com.google.android.setupdesign.GlifLayout>
\ No newline at end of file
diff --git a/res/values/strings.xml b/res/values/strings.xml
index 18b20b9..9f4672b 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -771,6 +771,8 @@
     <string name="security_settings_face_enroll_introduction_accessibility_diversity"></string>
     <!-- Message shown for a toggle which when enabled, allows the user to enroll using a simpler flow for accessibility [CHAR LIMIT=NONE] -->
     <string name="security_settings_face_enroll_introduction_accessibility_vision"></string>
+    <!-- Message on the face enrollment introduction page that explains privacy controls for face unlock [CHAR LIMIT=NONE] -->
+    <string name="security_settings_face_enroll_introduction_learn_more_message"></string>
     <!-- Button text to cancel enrollment from the introduction [CHAR LIMIT=22] -->
     <string name="security_settings_face_enroll_introduction_cancel">Cancel</string>
     <!-- Button text to cancel enrollment [CHAR LIMIT=30] -->
@@ -898,6 +900,8 @@
     <string name="security_settings_fingerprint_enroll_introduction_footer_title_consent_1">You and your child are in control</string>
     <!-- Introduction title shown in the bottom of fingerprint enrollment dialog [CHAR LIMIT=NONE]-->
     <string name="security_settings_fingerprint_enroll_introduction_footer_title_2">Keep in mind</string>
+    <!-- Introduction title shown in the bottom of fingerprint enrollment dialog [CHAR LIMIT=NONE]-->
+    <string name="security_settings_fingerprint_enroll_introduction_footer_title_3">Secure and helpful</string>
     <!-- Introduction detail message shown in fingerprint enrollment dialog, when fingerprint unlock is disabled by device admin [CHAR LIMIT=NONE]-->
     <string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled">Use your fingerprint to unlock your phone or approve purchases.\n\nNote: You can\u2019t use your fingerprint to unlock this device. For more information, contact your organization\u2019s admin.</string>
     <!-- Button text to cancel enrollment from the introduction [CHAR LIMIT=22] -->
@@ -928,6 +932,8 @@
     <string name="security_settings_fingerprint_v2_enroll_introduction_footer_message_consent_6">For best results, use a screen protector that\u2019s Made for Google certified. With other screen protectors, your child\u2019s fingerprint may not work.</string>
     <!-- Introduction detail message shown in fingerprint enrollment introduction to learn more about fingerprint [CHAR LIMIT=NONE]-->
     <string name="security_settings_fingerprint_v2_enroll_introduction_message_learn_more"></string>
+    <!-- Introduction detail message shown in fingerprint enrollment introduction to learn more about fingerprint [CHAR LIMIT=NONE]-->
+    <string name="security_settings_fingerprint_v2_enroll_introduction_message_learn_more_2"></string>
 
     <!-- Watch unlock enrollment and settings --><skip />
     <!-- Title shown for menu item that launches watch unlock settings. [CHAR LIMIT=40] -->
diff --git a/src/com/android/settings/biometrics/BiometricEnrollIntroduction.java b/src/com/android/settings/biometrics/BiometricEnrollIntroduction.java
index 1f7b3e5..77f11ff 100644
--- a/src/com/android/settings/biometrics/BiometricEnrollIntroduction.java
+++ b/src/com/android/settings/biometrics/BiometricEnrollIntroduction.java
@@ -37,6 +37,7 @@
 import com.android.settings.R;
 import com.android.settings.SetupWizardUtils;
 import com.android.settings.Utils;
+import com.android.settings.flags.Flags;
 import com.android.settings.password.ChooseLockGeneric;
 import com.android.settings.password.ChooseLockSettingsHelper;
 import com.android.settings.password.ConfirmDeviceCredentialActivity;
@@ -551,8 +552,11 @@
     @NonNull
     protected PorterDuffColorFilter getIconColorFilter() {
         if (mIconColorFilter == null) {
+            final int colorType = Flags.biometricsOnboardingEducation()
+                    ? DynamicColorPalette.ColorType.PRIMARY_TEXT
+                    : DynamicColorPalette.ColorType.ACCENT;
             mIconColorFilter = new PorterDuffColorFilter(
-                    DynamicColorPalette.getColor(this, DynamicColorPalette.ColorType.ACCENT),
+                    DynamicColorPalette.getColor(this, colorType),
                     PorterDuff.Mode.SRC_IN);
         }
         return mIconColorFilter;
diff --git a/src/com/android/settings/biometrics/face/FaceEnrollIntroduction.java b/src/com/android/settings/biometrics/face/FaceEnrollIntroduction.java
index d3f7519..78e3770 100644
--- a/src/com/android/settings/biometrics/face/FaceEnrollIntroduction.java
+++ b/src/com/android/settings/biometrics/face/FaceEnrollIntroduction.java
@@ -53,6 +53,7 @@
 import com.android.settings.biometrics.BiometricEnrollIntroduction;
 import com.android.settings.biometrics.BiometricUtils;
 import com.android.settings.biometrics.MultiBiometricEnrollHelper;
+import com.android.settings.flags.Flags;
 import com.android.settings.password.ChooseLockSettingsHelper;
 import com.android.settings.password.SetupSkipDialog;
 import com.android.settings.utils.SensorPrivacyManagerHelper;
@@ -144,6 +145,19 @@
         final ImageView iconLooking = findViewById(R.id.icon_looking);
         iconGlasses.getBackground().setColorFilter(getIconColorFilter());
         iconLooking.getBackground().setColorFilter(getIconColorFilter());
+        if (Flags.biometricsOnboardingEducation()) {
+            final ImageView iconSecurityPrivacySafe = findViewById(R.id.icon_security_privacy_safe);
+            final ImageView iconPrivacyTip = findViewById(R.id.icon_privacy_tip);
+            final ImageView iconFamiliarFaceAndZone =
+                    findViewById(R.id.icon_familiar_face_and_zone);
+            final ImageView iconTrashCan = findViewById(R.id.icon_trash_can);
+            final ImageView iconLink = findViewById(R.id.icon_link);
+            iconSecurityPrivacySafe.getBackground().setColorFilter(getIconColorFilter());
+            iconPrivacyTip.getBackground().setColorFilter(getIconColorFilter());
+            iconFamiliarFaceAndZone.getBackground().setColorFilter(getIconColorFilter());
+            iconTrashCan.getBackground().setColorFilter(getIconColorFilter());
+            iconLink.getBackground().setColorFilter(getIconColorFilter());
+        }
 
         // Set text for views with multiple variations.
         final TextView infoMessageGlasses = findViewById(R.id.info_message_glasses);
@@ -156,9 +170,19 @@
         infoMessageLooking.setText(getInfoMessageLooking());
         inControlTitle.setText(getInControlTitle());
         howMessage.setText(getHowMessage());
-        inControlMessage.setText(Html.fromHtml(getString(getInControlMessage()),
-                Html.FROM_HTML_MODE_LEGACY));
-        inControlMessage.setMovementMethod(LinkMovementMethod.getInstance());
+        if (Flags.biometricsOnboardingEducation()) {
+            inControlMessage.setText(
+                    R.string.security_settings_face_enroll_introduction_control_message_2);
+            final TextView learnMore = findViewById(R.id.message_learn_more);
+            learnMore.setText(Html.fromHtml(getString(
+                    R.string.security_settings_face_enroll_introduction_learn_more_message),
+                    Html.FROM_HTML_MODE_LEGACY));
+            learnMore.setMovementMethod(LinkMovementMethod.getInstance());
+        } else {
+            inControlMessage.setText(Html.fromHtml(getString(getInControlMessage()),
+                    Html.FROM_HTML_MODE_LEGACY));
+            inControlMessage.setMovementMethod(LinkMovementMethod.getInstance());
+        }
         lessSecure.setText(getLessSecureMessage());
 
         final ScrollView scrollView =
@@ -411,7 +435,11 @@
 
     @Override
     protected int getLayoutResource() {
-        return R.layout.face_enroll_introduction;
+        if (Flags.biometricsOnboardingEducation()) {
+            return R.layout.face_enroll_introduction_2;
+        } else {
+            return R.layout.face_enroll_introduction;
+        }
     }
 
     @Override
@@ -594,8 +622,13 @@
             setDescriptionText(getString(
                     R.string.private_space_face_enroll_introduction_message));
         } else if (mIsFaceStrong) {
-            setDescriptionText(getString(
-                    R.string.security_settings_face_enroll_introduction_message_class3));
+            final int messageRes;
+            if (Flags.biometricsOnboardingEducation()) {
+                messageRes = R.string.security_settings_face_enroll_introduction_message_class3_2;
+            } else {
+                messageRes = R.string.security_settings_face_enroll_introduction_message_class3;
+            }
+            setDescriptionText(getString(messageRes));
         }
         super.updateDescriptionText();
     }
diff --git a/tests/robotests/src/com/android/settings/biometrics/face/FaceEnrollIntroductionTest.java b/tests/robotests/src/com/android/settings/biometrics/face/FaceEnrollIntroductionTest.java
index 81a7269..3bfe819 100644
--- a/tests/robotests/src/com/android/settings/biometrics/face/FaceEnrollIntroductionTest.java
+++ b/tests/robotests/src/com/android/settings/biometrics/face/FaceEnrollIntroductionTest.java
@@ -64,6 +64,7 @@
 import com.android.settings.Settings;
 import com.android.settings.biometrics.BiometricEnrollBase;
 import com.android.settings.biometrics.BiometricUtils;
+import com.android.settings.flags.Flags;
 import com.android.settings.password.ChooseLockSettingsHelper;
 import com.android.settings.testutils.FakeFeatureFactory;
 import com.android.settings.testutils.shadow.SettingsShadowResources;
@@ -402,7 +403,9 @@
 
         assertThat(getGlifLayout(mActivity).getDescriptionText().toString()).isEqualTo(
                 mContext.getString(
-                        R.string.security_settings_face_enroll_introduction_message_class3));
+                        Flags.biometricsOnboardingEducation()
+                            ? R.string.security_settings_face_enroll_introduction_message_class3_2
+                            : R.string.security_settings_face_enroll_introduction_message_class3));
         assertThat(mActivity.findViewById(R.id.info_row_less_secure).getVisibility()).isEqualTo(
                 View.GONE);
     }