summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Arpan <akaphle@google.com> 2024-03-22 18:46:15 +0000
committer Arpan <akaphle@google.com> 2024-03-22 20:39:05 +0000
commitca9b34606540f00d3bccd46c3a09e1ab4a585e53 (patch)
treeee8f259ae6da979074b1a25a0a3143694964f664
parent46fb9911d90f6f048d5fd5d488f6e624a9c18e31 (diff)
Fixing permission for Biometric Logos in CredMan
The issue is thoroughly documented in the bug, but this change ensures that the biometric logo setting can be done. There is strange behaviour with 'signature|privilege' where the new 'privilege' scope appears to break the 'OR' relationship for our framework UI codebase. Now, we've added the framework UI package within the privapp allowlist for that single permission. Bug: 330906693 Test: Build and UI Test On b/329874867 Change-Id: Ic9dcd4a7e31f5b439ccd807b4ea454cf2cee55a0
-rw-r--r--data/etc/privapp-permissions-platform.xml4
-rw-r--r--packages/CredentialManager/AndroidManifest.xml1
-rw-r--r--packages/CredentialManager/src/com/android/credentialmanager/common/BiometricHandler.kt3
3 files changed, 7 insertions, 1 deletions
diff --git a/data/etc/privapp-permissions-platform.xml b/data/etc/privapp-permissions-platform.xml
index ea3235bfff6c..fc4277e60bc5 100644
--- a/data/etc/privapp-permissions-platform.xml
+++ b/data/etc/privapp-permissions-platform.xml
@@ -42,6 +42,10 @@ applications that come with the platform
<permission name="android.permission.READ_SYSTEM_GRAMMATICAL_GENDER"/>
</privapp-permissions>
+ <privapp-permissions package="com.android.credentialmanager">
+ <permission name="android.permission.SET_BIOMETRIC_DIALOG_ADVANCED" />
+ </privapp-permissions>
+
<privapp-permissions package="com.android.externalstorage">
<permission name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/>
<permission name="android.permission.WRITE_MEDIA_STORAGE"/>
diff --git a/packages/CredentialManager/AndroidManifest.xml b/packages/CredentialManager/AndroidManifest.xml
index 7a8c25bd12ab..1ac8e19c2bc6 100644
--- a/packages/CredentialManager/AndroidManifest.xml
+++ b/packages/CredentialManager/AndroidManifest.xml
@@ -21,6 +21,7 @@
<uses-permission android:name="android.permission.LAUNCH_CREDENTIAL_SELECTOR"/>
<uses-permission android:name="android.permission.QUERY_ALL_PACKAGES"/>
+ <uses-permission android:name="android.permission.SET_BIOMETRIC_DIALOG_ADVANCED"/>
<uses-permission android:name="android.permission.HIDE_NON_SYSTEM_OVERLAY_WINDOWS"/>
<uses-permission android:name="android.permission.ACCESS_INSTANT_APPS" />
<uses-permission android:name="android.permission.USE_BIOMETRIC" />
diff --git a/packages/CredentialManager/src/com/android/credentialmanager/common/BiometricHandler.kt b/packages/CredentialManager/src/com/android/credentialmanager/common/BiometricHandler.kt
index db5ab569535f..d21077ee7c5a 100644
--- a/packages/CredentialManager/src/com/android/credentialmanager/common/BiometricHandler.kt
+++ b/packages/CredentialManager/src/com/android/credentialmanager/common/BiometricHandler.kt
@@ -175,7 +175,8 @@ private fun setupBiometricPrompt(
}
.setAllowedAuthenticators(finalAuthenticators)
.setConfirmationRequired(true)
- // TODO(b/326243754) : Add logo back once new permission privileges sorted out
+ .setLogoBitmap(biometricDisplayInfo.providerIcon)
+ .setLogoDescription(biometricDisplayInfo.providerName)
.setDescription(biometricDisplayInfo.descriptionAboveBiometricButton)
.build()