Update new consent screen for fingerprint
- Move top description into subtitle for landscape mode - Update the button text Bug: 177591560 Test: robotest and visual verified 1) Settings -> Security -> Fingerprint 2) Rotate the device and check if the description is on the right side Change-Id: Ie20597fce48f73aa83c5d637682db1860c384a7a
This commit is contained in:
45
res/drawable/ic_fingerprint_introduction_shield_24dp.xml
Normal file
45
res/drawable/ic_fingerprint_introduction_shield_24dp.xml
Normal file
@@ -0,0 +1,45 @@
|
|||||||
|
<!--
|
||||||
|
Copyright (C) 2021 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.
|
||||||
|
-->
|
||||||
|
|
||||||
|
<animated-vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
|
xmlns:aapt="http://schemas.android.com/aapt">
|
||||||
|
<aapt:attr name="android:drawable">
|
||||||
|
<vector android:height="24dp" android:width="24dp" android:viewportHeight="24"
|
||||||
|
android:viewportWidth="24"
|
||||||
|
android:tint="?android:attr/colorControlNormal">
|
||||||
|
<group android:name="_R_G">
|
||||||
|
<group android:name="_R_G_L_0_G">
|
||||||
|
<path android:name="_R_G_L_0_G_D_0_P_0" android:fillColor="#000000"
|
||||||
|
android:fillAlpha="1" android:fillType="nonZero"
|
||||||
|
android:pathData=" M12 2 C12,2 3.82,5.64 3.82,5.64 C3.82,5.64 3.82,11.09 3.82,11.09 C3.82,16.14 7.31,20.85 12,22 C16.69,20.85 20.18,16.14 20.18,11.09 C20.18,11.09 20.18,5.64 20.18,5.64 C20.18,5.64 12,2 12,2c M18.18 11.09 C18.18,12.64 17.77,14.14 17.08,15.47 C15.77,14.5 13.4,14 12,14 C10.6,14 8.23,14.5 6.92,15.47 C6.23,14.14 5.82,12.64 5.82,11.09 C5.82,11.09 5.82,6.94 5.82,6.94 C5.82,6.94 12,4.19 12,4.19 C12,4.19 18.18,6.94 18.18,6.94 C18.18,6.94 18.18,11.09 18.18,11.09c "/>
|
||||||
|
<path android:name="_R_G_L_0_G_D_1_P_0" android:fillColor="#000000"
|
||||||
|
android:fillAlpha="1" android:fillType="nonZero"
|
||||||
|
android:pathData=" M12 7.5 C13.66,7.5 15,8.84 15,10.5 C15,12.16 13.66,13.5 12,13.5 C10.34,13.5 9,12.16 9,10.5 C9,8.84 10.34,7.5 12,7.5c "/>
|
||||||
|
</group>
|
||||||
|
</group>
|
||||||
|
<group android:name="time_group"/>
|
||||||
|
</vector>
|
||||||
|
</aapt:attr>
|
||||||
|
<target android:name="time_group">
|
||||||
|
<aapt:attr name="android:animation">
|
||||||
|
<set android:ordering="together">
|
||||||
|
<objectAnimator android:propertyName="translateX" android:duration="2000"
|
||||||
|
android:startOffset="0" android:valueFrom="0" android:valueTo="1"
|
||||||
|
android:valueType="floatType"/>
|
||||||
|
</set>
|
||||||
|
</aapt:attr>
|
||||||
|
</target>
|
||||||
|
</animated-vector>
|
@@ -30,23 +30,16 @@
|
|||||||
android:clipToPadding="false"
|
android:clipToPadding="false"
|
||||||
android:orientation="vertical">
|
android:orientation="vertical">
|
||||||
|
|
||||||
<com.google.android.setupdesign.view.RichTextView
|
|
||||||
android:id="@+id/sud_layout_description"
|
|
||||||
style="@style/SudDescription.Glif"
|
|
||||||
android:layout_width="match_parent"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
android:text="@string/security_settings_fingerprint_enroll_introduction_message" />
|
|
||||||
|
|
||||||
<com.google.android.setupdesign.view.RichTextView
|
<com.google.android.setupdesign.view.RichTextView
|
||||||
android:id="@+id/error_text"
|
android:id="@+id/error_text"
|
||||||
style="@style/SudDescription.Glif"
|
style="@style/SudDescription.Glif"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content" />
|
android:layout_height="wrap_content" />
|
||||||
|
|
||||||
<com.google.android.setupdesign.view.FillContentLayout
|
<FrameLayout
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_weight="1">
|
android:layout_marginVertical="12dp">
|
||||||
|
|
||||||
<ImageView
|
<ImageView
|
||||||
style="@style/SudContentIllustration"
|
style="@style/SudContentIllustration"
|
||||||
@@ -55,25 +48,89 @@
|
|||||||
android:contentDescription="@null"
|
android:contentDescription="@null"
|
||||||
android:src="@drawable/fingerprint_enroll_introduction" />
|
android:src="@drawable/fingerprint_enroll_introduction" />
|
||||||
|
|
||||||
</com.google.android.setupdesign.view.FillContentLayout>
|
</FrameLayout>
|
||||||
|
|
||||||
<LinearLayout
|
<LinearLayout
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:orientation="horizontal">
|
android:orientation="vertical">
|
||||||
|
|
||||||
|
<com.google.android.setupdesign.view.RichTextView
|
||||||
|
style="@style/SudDescription.Glif"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:textAlignment="viewStart"
|
||||||
|
android:paddingTop="12dp"
|
||||||
|
android:text="@string/security_settings_fingerprint_enroll_introduction_footer_title_1" />
|
||||||
|
|
||||||
|
<LinearLayout
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:orientation="horizontal"
|
||||||
|
android:paddingTop="12dp">
|
||||||
|
|
||||||
|
<ImageView
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:contentDescription="@null"
|
||||||
|
android:src="@drawable/ic_fingerprint_introduction_shield_24dp"/>
|
||||||
|
<Space
|
||||||
|
android:layout_width="24dp"
|
||||||
|
android:layout_height="wrap_content"/>
|
||||||
|
<TextView
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:text="@string/security_settings_fingerprint_enroll_introduction_footer_message_1" />
|
||||||
|
</LinearLayout>
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
style="@style/SudDescription.Glif"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:textAlignment="viewStart"
|
||||||
|
android:paddingTop="24dp"
|
||||||
|
android:text="@string/security_settings_fingerprint_enroll_introduction_footer_title_2" />
|
||||||
|
|
||||||
|
<LinearLayout
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:orientation="horizontal"
|
||||||
|
android:paddingTop="12dp">
|
||||||
|
|
||||||
<ImageView
|
<ImageView
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:contentDescription="@null"
|
android:contentDescription="@null"
|
||||||
android:src="@drawable/ic_info_outline_24dp"/>
|
android:src="@drawable/ic_info_outline_24dp"/>
|
||||||
|
<Space
|
||||||
<com.google.android.setupdesign.view.RichTextView
|
android:layout_width="24dp"
|
||||||
android:id="@+id/sud_layout_info"
|
android:layout_height="wrap_content"/>
|
||||||
style="@style/SudDescription.Glif"
|
<TextView
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:text="@string/security_settings_fingerprint_enroll_introduction_bottom_message" />
|
android:text="@string/security_settings_fingerprint_enroll_introduction_footer_message_2" />
|
||||||
|
</LinearLayout>
|
||||||
|
|
||||||
|
<LinearLayout
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:orientation="horizontal"
|
||||||
|
android:paddingTop="24dp">
|
||||||
|
|
||||||
|
<ImageView
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:contentDescription="@null"
|
||||||
|
android:src="@drawable/ic_fingerprint_24dp"/>
|
||||||
|
<Space
|
||||||
|
android:layout_width="24dp"
|
||||||
|
android:layout_height="wrap_content"/>
|
||||||
|
<TextView
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:text="@string/security_settings_fingerprint_enroll_introduction_footer_message_3" />
|
||||||
|
</LinearLayout>
|
||||||
|
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
|
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
|
@@ -884,13 +884,21 @@
|
|||||||
<!-- message shown in summary field when no fingerprints are registered -->
|
<!-- message shown in summary field when no fingerprints are registered -->
|
||||||
<string name="security_settings_fingerprint_preference_summary_none"></string>
|
<string name="security_settings_fingerprint_preference_summary_none"></string>
|
||||||
<!-- Introduction title shown in fingerprint enrollment to introduce the fingerprint feature[CHAR LIMIT=29] -->
|
<!-- Introduction title shown in fingerprint enrollment to introduce the fingerprint feature[CHAR LIMIT=29] -->
|
||||||
<string name="security_settings_fingerprint_enroll_introduction_title">Unlock with fingerprint</string>
|
<string name="security_settings_fingerprint_enroll_introduction_title">Set up your fingerprint</string>
|
||||||
<!-- Introduction title shown in fingerprint enrollment to introduce the fingerprint feature, when fingerprint unlock is disabed by device admin [CHAR LIMIT=40] -->
|
<!-- Introduction title shown in fingerprint enrollment to introduce the fingerprint feature, when fingerprint unlock is disabled by device admin [CHAR LIMIT=40] -->
|
||||||
<string name="security_settings_fingerprint_enroll_introduction_title_unlock_disabled">Use your fingerprint</string>
|
<string name="security_settings_fingerprint_enroll_introduction_title_unlock_disabled">Use your fingerprint</string>
|
||||||
<!-- Introduction detail message shown in fingerprint enrollment dialog [CHAR LIMIT=NONE]-->
|
<!-- Introduction detail message shown in fingerprint enrollment dialog [CHAR LIMIT=NONE]-->
|
||||||
<string name="security_settings_fingerprint_enroll_introduction_message">Just touch the fingerprint sensor to unlock your phone, authorize purchases, or sign in to apps. Be careful whose fingerprints you add. Even one added print can do any of these things.</string>
|
<string name="security_settings_fingerprint_enroll_introduction_message">Just touch the fingerprint sensor to unlock your phone, authorize purchases, or sign in to apps. Be careful whose fingerprints you add. Even one added print can do any of these things.</string>
|
||||||
|
<!-- Introduction title shown in the bottom of fingerprint enrollment dialog [CHAR LIMIT=NONE]-->
|
||||||
|
<string name="security_settings_fingerprint_enroll_introduction_footer_title_1">You\u2019re 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 detail message shown in the bottom of fingerprint enrollment dialog [CHAR LIMIT=NONE]-->
|
<!-- Introduction detail message shown in the bottom of fingerprint enrollment dialog [CHAR LIMIT=NONE]-->
|
||||||
<string name="security_settings_fingerprint_enroll_introduction_bottom_message">Your fingerprint may be less secure than a strong pattern or PIN.</string>
|
<string name="security_settings_fingerprint_enroll_introduction_footer_message_1">The data recorded by Fingerprint is stored securely and never leaves your phone. You can delete your data anytime in Settings.</string>
|
||||||
|
<!-- Introduction detail message shown in the bottom of fingerprint enrollment dialog [CHAR LIMIT=NONE]-->
|
||||||
|
<string name="security_settings_fingerprint_enroll_introduction_footer_message_2">Your fingerprint may be less secure than a strong pattern or PIN.</string>
|
||||||
|
<!-- Introduction detail message shown in the bottom of fingerprint enrollment dialog [CHAR LIMIT=NONE]-->
|
||||||
|
<string name="security_settings_fingerprint_enroll_introduction_footer_message_3" product="default">Your phone will occasionally use your recent fingerprint images to create improved fingerprint models.</string>
|
||||||
<!-- Introduction detail message shown in fingerprint enrollment dialog, when fingerprint unlock is disabled by device admin [CHAR LIMIT=NONE]-->
|
<!-- 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>
|
<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>
|
||||||
<!-- Introduction detail message shown in fingerprint enrollment screen in setup wizard. [CHAR LIMIT=NONE]-->
|
<!-- Introduction detail message shown in fingerprint enrollment screen in setup wizard. [CHAR LIMIT=NONE]-->
|
||||||
@@ -899,8 +907,12 @@
|
|||||||
<string name="security_settings_fingerprint_enroll_introduction_cancel">Cancel</string>
|
<string name="security_settings_fingerprint_enroll_introduction_cancel">Cancel</string>
|
||||||
<!-- Button text to cancel enrollment [CHAR LIMIT=30] -->
|
<!-- Button text to cancel enrollment [CHAR LIMIT=30] -->
|
||||||
<string name="security_settings_fingerprint_enroll_introduction_no_thanks">No thanks</string>
|
<string name="security_settings_fingerprint_enroll_introduction_no_thanks">No thanks</string>
|
||||||
|
<!-- Button text to skip enrollment [CHAR LIMIT=30] -->
|
||||||
|
<string name="security_settings_fingerprint_enroll_introduction_skip">Skip</string>
|
||||||
<!-- Button text to continue to the next screen from the introduction [CHAR LIMIT=22] -->
|
<!-- Button text to continue to the next screen from the introduction [CHAR LIMIT=22] -->
|
||||||
<string name="security_settings_fingerprint_enroll_introduction_continue">Continue</string>
|
<string name="security_settings_fingerprint_enroll_introduction_continue">Continue</string>
|
||||||
|
<!-- Button text to agree the consent and continue to the next screen from the introduction [CHAR LIMIT=22] -->
|
||||||
|
<string name="security_settings_fingerprint_enroll_introduction_agree">Agree</string>
|
||||||
<!-- Button text to cancel enrollment from the introduction (this string variant is used while in setup wizard) [CHAR LIMIT=22] -->
|
<!-- Button text to cancel enrollment from the introduction (this string variant is used while in setup wizard) [CHAR LIMIT=22] -->
|
||||||
<string name="security_settings_fingerprint_enroll_introduction_cancel_setup">Skip</string>
|
<string name="security_settings_fingerprint_enroll_introduction_cancel_setup">Skip</string>
|
||||||
<!-- Button text to continue to the next screen from the introduction (this string variant is used while in setup wizard) [CHAR LIMIT=22] -->
|
<!-- Button text to continue to the next screen from the introduction (this string variant is used while in setup wizard) [CHAR LIMIT=22] -->
|
||||||
|
@@ -173,6 +173,10 @@ public abstract class BiometricEnrollBase extends InstrumentedActivity {
|
|||||||
setHeaderText(resId, false /* force */);
|
setHeaderText(resId, false /* force */);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
protected void setDescriptionText(int resId) {
|
||||||
|
getLayout().setDescriptionText(resId);
|
||||||
|
}
|
||||||
|
|
||||||
protected FooterButton getNextButton() {
|
protected FooterButton getNextButton() {
|
||||||
if (mFooterBarMixin != null) {
|
if (mFooterBarMixin != null) {
|
||||||
return mFooterBarMixin.getPrimaryButton();
|
return mFooterBarMixin.getPrimaryButton();
|
||||||
|
@@ -309,9 +309,8 @@ public abstract class BiometricEnrollIntroduction extends BiometricEnrollBase
|
|||||||
protected void initViews() {
|
protected void initViews() {
|
||||||
super.initViews();
|
super.initViews();
|
||||||
|
|
||||||
TextView description = (TextView) findViewById(R.id.sud_layout_description);
|
|
||||||
if (mBiometricUnlockDisabledByAdmin) {
|
if (mBiometricUnlockDisabledByAdmin) {
|
||||||
description.setText(getDescriptionResDisabledByAdmin());
|
setDescriptionText(getDescriptionResDisabledByAdmin());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -57,6 +57,8 @@ public class FingerprintEnrollIntroduction extends BiometricEnrollIntroduction {
|
|||||||
|
|
||||||
super.onCreate(savedInstanceState);
|
super.onCreate(savedInstanceState);
|
||||||
|
|
||||||
|
setDescriptionText(R.string.security_settings_fingerprint_enroll_introduction_message);
|
||||||
|
|
||||||
mFooterBarMixin = getLayout().getMixin(FooterBarMixin.class);
|
mFooterBarMixin = getLayout().getMixin(FooterBarMixin.class);
|
||||||
mFooterBarMixin.setSecondaryButton(
|
mFooterBarMixin.setSecondaryButton(
|
||||||
new FooterButton.Builder(this)
|
new FooterButton.Builder(this)
|
||||||
@@ -69,7 +71,7 @@ public class FingerprintEnrollIntroduction extends BiometricEnrollIntroduction {
|
|||||||
|
|
||||||
mFooterBarMixin.setPrimaryButton(
|
mFooterBarMixin.setPrimaryButton(
|
||||||
new FooterButton.Builder(this)
|
new FooterButton.Builder(this)
|
||||||
.setText(R.string.wizard_next)
|
.setText(R.string.security_settings_fingerprint_enroll_introduction_agree)
|
||||||
.setListener(this::onNextButtonClick)
|
.setListener(this::onNextButtonClick)
|
||||||
.setButtonType(FooterButton.ButtonType.NEXT)
|
.setButtonType(FooterButton.ButtonType.NEXT)
|
||||||
.setTheme(R.style.SudGlifButton_Primary)
|
.setTheme(R.style.SudGlifButton_Primary)
|
||||||
@@ -78,7 +80,7 @@ public class FingerprintEnrollIntroduction extends BiometricEnrollIntroduction {
|
|||||||
}
|
}
|
||||||
|
|
||||||
int getNegativeButtonTextId() {
|
int getNegativeButtonTextId() {
|
||||||
return R.string.security_settings_fingerprint_enroll_introduction_no_thanks;
|
return R.string.security_settings_fingerprint_enroll_introduction_skip;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
Reference in New Issue
Block a user