aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCurtis Belmonte <curtislb@google.com>2020-10-21 20:32:44 +0000
committerGerrit Code Review <noreply-gerritcodereview@google.com>2020-10-21 20:32:44 +0000
commit83c92e2628ca90529d8f4a9e3a3187c111235fd3 (patch)
tree5e8f1698340ac258135f5a5fcacdcda23449f4bd
parente163b56b36113dad1288d8c7a5e124118c426721 (diff)
parentafe56749a61cac436316a087de9a9229f771ee94 (diff)
downloadsupport-83c92e2628ca90529d8f4a9e3a3187c111235fd3.tar.gz
Merge "Assume Class 3 biometrics for Pixel 4 on API <30" into androidx-master-dev
-rw-r--r--biometric/biometric/src/androidTest/java/androidx/biometric/DeviceUtilsTest.java26
-rw-r--r--biometric/biometric/src/main/java/androidx/biometric/DeviceUtils.java8
-rw-r--r--biometric/biometric/src/main/res/values/devices.xml4
3 files changed, 22 insertions, 16 deletions
diff --git a/biometric/biometric/src/androidTest/java/androidx/biometric/DeviceUtilsTest.java b/biometric/biometric/src/androidTest/java/androidx/biometric/DeviceUtilsTest.java
index 508f1b3e318..791d38fc4cb 100644
--- a/biometric/biometric/src/androidTest/java/androidx/biometric/DeviceUtilsTest.java
+++ b/biometric/biometric/src/androidTest/java/androidx/biometric/DeviceUtilsTest.java
@@ -112,19 +112,23 @@ public class DeviceUtilsTest {
@Test
public void testCanAssumeStrongBiometrics() {
- final String[] modelPrefixes = {"foo", "bar"};
+ final String[] modelNames = {"S", "flame", "My phone"};
when(mContext.getResources()).thenReturn(mResources);
- when(mResources.getStringArray(R.array.assume_strong_biometrics_prefixes))
- .thenReturn(modelPrefixes);
+ when(mResources.getStringArray(R.array.assume_strong_biometrics_models))
+ .thenReturn(modelNames);
final boolean isPreApi30 = Build.VERSION.SDK_INT < Build.VERSION_CODES.R;
- assertThat(DeviceUtils.canAssumeStrongBiometrics(mContext, "foo")).isEqualTo(isPreApi30);
- assertThat(DeviceUtils.canAssumeStrongBiometrics(mContext, "bar")).isEqualTo(isPreApi30);
- assertThat(DeviceUtils.canAssumeStrongBiometrics(mContext, "foobar")).isEqualTo(isPreApi30);
- assertThat(DeviceUtils.canAssumeStrongBiometrics(mContext, "bar123")).isEqualTo(isPreApi30);
- assertThat(DeviceUtils.canAssumeStrongBiometrics(mContext, "baz")).isFalse();
- assertThat(DeviceUtils.canAssumeStrongBiometrics(mContext, "abcxyz")).isFalse();
- assertThat(DeviceUtils.canAssumeStrongBiometrics(mContext, "bazfoo")).isFalse();
- assertThat(DeviceUtils.canAssumeStrongBiometrics(mContext, "FooBar")).isFalse();
+ assertThat(DeviceUtils.canAssumeStrongBiometrics(mContext, "S")).isEqualTo(isPreApi30);
+ assertThat(DeviceUtils.canAssumeStrongBiometrics(mContext, "flame")).isEqualTo(isPreApi30);
+ assertThat(DeviceUtils.canAssumeStrongBiometrics(mContext, "My phone"))
+ .isEqualTo(isPreApi30);
+
+ assertThat(DeviceUtils.canAssumeStrongBiometrics(mContext, "s")).isFalse();
+ assertThat(DeviceUtils.canAssumeStrongBiometrics(mContext, "Y")).isFalse();
+ assertThat(DeviceUtils.canAssumeStrongBiometrics(mContext, "Flame")).isFalse();
+ assertThat(DeviceUtils.canAssumeStrongBiometrics(mContext, "coral")).isFalse();
+ assertThat(DeviceUtils.canAssumeStrongBiometrics(mContext, "My Phone")).isFalse();
+ assertThat(DeviceUtils.canAssumeStrongBiometrics(mContext, "Myphone")).isFalse();
+ assertThat(DeviceUtils.canAssumeStrongBiometrics(mContext, "My phone2")).isFalse();
}
}
diff --git a/biometric/biometric/src/main/java/androidx/biometric/DeviceUtils.java b/biometric/biometric/src/main/java/androidx/biometric/DeviceUtils.java
index caf16d5407d..077c509ebb0 100644
--- a/biometric/biometric/src/main/java/androidx/biometric/DeviceUtils.java
+++ b/biometric/biometric/src/main/java/androidx/biometric/DeviceUtils.java
@@ -96,7 +96,7 @@ class DeviceUtils {
// Android 11 (API 30) and above may downgrade a sensor's security class at runtime.
return false;
}
- return isModelInPrefixList(context, model, R.array.assume_strong_biometrics_prefixes);
+ return isModelInList(context, model, R.array.assume_strong_biometrics_models);
}
/**
@@ -106,7 +106,7 @@ class DeviceUtils {
* @param context The application or activity context.
* @param vendor Case-insensitive name of the device vendor.
* @param resId Resource ID for the string array of vendor names to check against.
- * @return Whether the vendor name matches one in the given string array.
+ * @return Whether the vendor name matches one in the string array.
*/
private static boolean isVendorInList(@NonNull Context context, String vendor, int resId) {
if (vendor == null) {
@@ -128,7 +128,7 @@ class DeviceUtils {
* @param context The application or activity context.
* @param model Model name of the current device.
* @param resId Resource ID for the string array of device model prefixes to check against.
- * @return Whether the model matches one in the given string array.
+ * @return Whether the model matches a prefix in the string array.
*/
private static boolean isModelInPrefixList(@NonNull Context context, String model, int resId) {
if (model == null) {
@@ -150,7 +150,7 @@ class DeviceUtils {
* @param context The application or activity context.
* @param model Model name of the current device.
* @param resId Resource ID for the string array of device model prefixes to check against.
- * @return Whether the model matches one in the given string array.
+ * @return Whether the model matches one in the string array.
*/
private static boolean isModelInList(@NonNull Context context, String model, int resId) {
if (model == null) {
diff --git a/biometric/biometric/src/main/res/values/devices.xml b/biometric/biometric/src/main/res/values/devices.xml
index 4a7c2ace0e0..2089d3f9584 100644
--- a/biometric/biometric/src/main/res/values/devices.xml
+++ b/biometric/biometric/src/main/res/values/devices.xml
@@ -78,6 +78,8 @@
List of known device models for which all biometric sensors checked by
BiometricManager#canAuthenticate() meet or exceed the Class 3 (Strong) security threshold.
-->
- <string-array name="assume_strong_biometrics_prefixes">
+ <string-array name="assume_strong_biometrics_models">
+ <item>Pixel 4</item>
+ <item>Pixel 4 XL</item>
</string-array>
</resources>