Loading packages/CredentialManager/AndroidManifest.xml +1 −0 Original line number Diff line number Diff line Loading @@ -22,6 +22,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.HIDE_NON_SYSTEM_OVERLAY_WINDOWS"/> <uses-permission android:name="android.permission.ACCESS_INSTANT_APPS" /> <application android:allowBackup="true" Loading packages/CredentialManager/src/com/android/credentialmanager/DataConverter.kt +17 −9 Original line number Diff line number Diff line Loading @@ -19,6 +19,7 @@ package com.android.credentialmanager import android.app.slice.Slice import android.content.ComponentName import android.content.Context import android.content.pm.PackageInfo import android.content.pm.PackageManager import android.credentials.Credential.TYPE_PASSWORD_CREDENTIAL import android.credentials.ui.AuthenticationEntry Loading Loading @@ -67,7 +68,7 @@ fun getAppLabel( appPackageName: String ): String? { return try { val pkgInfo = pm.getPackageInfo(appPackageName, PackageManager.PackageInfoFlags.of(0)) val pkgInfo = getPackageInfo(pm, appPackageName) val applicationInfo = checkNotNull(pkgInfo.applicationInfo) applicationInfo.loadSafeLabel( pm, 0f, Loading @@ -90,10 +91,7 @@ private fun getServiceLabelAndIcon( // Test data has only package name not component name. // For test data usage only. try { val pkgInfo = pm.getPackageInfo( providerFlattenedComponentName, PackageManager.PackageInfoFlags.of(0) ) val pkgInfo = getPackageInfo(pm, providerFlattenedComponentName) val applicationInfo = checkNotNull(pkgInfo.applicationInfo) providerLabel = applicationInfo.loadSafeLabel( Loading @@ -117,10 +115,7 @@ private fun getServiceLabelAndIcon( // Added for mdoc use case where the provider may not need to register a service and // instead only relies on the registration api. try { val pkgInfo = pm.getPackageInfo( component.packageName, PackageManager.PackageInfoFlags.of(0) ) val pkgInfo = getPackageInfo(pm, providerFlattenedComponentName) val applicationInfo = checkNotNull(pkgInfo.applicationInfo) providerLabel = applicationInfo.loadSafeLabel( Loading @@ -144,6 +139,19 @@ private fun getServiceLabelAndIcon( } } private fun getPackageInfo( pm: PackageManager, packageName: String ): PackageInfo { val flags = PackageManager.MATCH_INSTANT return pm.getPackageInfo( packageName, PackageManager.PackageInfoFlags.of( (flags).toLong()) ) } /** Utility functions for converting CredentialManager data structures to or from UI formats. */ class GetFlowUtils { companion object { Loading Loading
packages/CredentialManager/AndroidManifest.xml +1 −0 Original line number Diff line number Diff line Loading @@ -22,6 +22,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.HIDE_NON_SYSTEM_OVERLAY_WINDOWS"/> <uses-permission android:name="android.permission.ACCESS_INSTANT_APPS" /> <application android:allowBackup="true" Loading
packages/CredentialManager/src/com/android/credentialmanager/DataConverter.kt +17 −9 Original line number Diff line number Diff line Loading @@ -19,6 +19,7 @@ package com.android.credentialmanager import android.app.slice.Slice import android.content.ComponentName import android.content.Context import android.content.pm.PackageInfo import android.content.pm.PackageManager import android.credentials.Credential.TYPE_PASSWORD_CREDENTIAL import android.credentials.ui.AuthenticationEntry Loading Loading @@ -67,7 +68,7 @@ fun getAppLabel( appPackageName: String ): String? { return try { val pkgInfo = pm.getPackageInfo(appPackageName, PackageManager.PackageInfoFlags.of(0)) val pkgInfo = getPackageInfo(pm, appPackageName) val applicationInfo = checkNotNull(pkgInfo.applicationInfo) applicationInfo.loadSafeLabel( pm, 0f, Loading @@ -90,10 +91,7 @@ private fun getServiceLabelAndIcon( // Test data has only package name not component name. // For test data usage only. try { val pkgInfo = pm.getPackageInfo( providerFlattenedComponentName, PackageManager.PackageInfoFlags.of(0) ) val pkgInfo = getPackageInfo(pm, providerFlattenedComponentName) val applicationInfo = checkNotNull(pkgInfo.applicationInfo) providerLabel = applicationInfo.loadSafeLabel( Loading @@ -117,10 +115,7 @@ private fun getServiceLabelAndIcon( // Added for mdoc use case where the provider may not need to register a service and // instead only relies on the registration api. try { val pkgInfo = pm.getPackageInfo( component.packageName, PackageManager.PackageInfoFlags.of(0) ) val pkgInfo = getPackageInfo(pm, providerFlattenedComponentName) val applicationInfo = checkNotNull(pkgInfo.applicationInfo) providerLabel = applicationInfo.loadSafeLabel( Loading @@ -144,6 +139,19 @@ private fun getServiceLabelAndIcon( } } private fun getPackageInfo( pm: PackageManager, packageName: String ): PackageInfo { val flags = PackageManager.MATCH_INSTANT return pm.getPackageInfo( packageName, PackageManager.PackageInfoFlags.of( (flags).toLong()) ) } /** Utility functions for converting CredentialManager data structures to or from UI formats. */ class GetFlowUtils { companion object { Loading