diff options
author | Curtis Belmonte <curtislb@google.com> | 2020-10-21 20:32:44 +0000 |
---|---|---|
committer | Gerrit Code Review <noreply-gerritcodereview@google.com> | 2020-10-21 20:32:44 +0000 |
commit | 83c92e2628ca90529d8f4a9e3a3187c111235fd3 (patch) | |
tree | 5e8f1698340ac258135f5a5fcacdcda23449f4bd | |
parent | e163b56b36113dad1288d8c7a5e124118c426721 (diff) | |
parent | afe56749a61cac436316a087de9a9229f771ee94 (diff) | |
download | support-83c92e2628ca90529d8f4a9e3a3187c111235fd3.tar.gz |
Merge "Assume Class 3 biometrics for Pixel 4 on API <30" into androidx-master-dev
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> |