diff --git a/services/core/java/com/android/server/pm/DefaultPermissionGrantPolicy.java b/services/core/java/com/android/server/pm/DefaultPermissionGrantPolicy.java index 3227ef857f5e3..71a2d59fb34b3 100644 --- a/services/core/java/com/android/server/pm/DefaultPermissionGrantPolicy.java +++ b/services/core/java/com/android/server/pm/DefaultPermissionGrantPolicy.java @@ -34,6 +34,7 @@ import android.provider.CalendarContract; import android.provider.ContactsContract; import android.provider.MediaStore; import android.provider.Telephony.Sms.Intents; +import android.security.Credentials; import android.util.ArraySet; import android.util.Log; @@ -298,6 +299,15 @@ final class DefaultPermissionGrantPolicy { grantRuntimePermissionsLPw(storagePackage, STORAGE_PERMISSIONS, userId); } + // CertInstaller + Intent certInstallerIntent = new Intent(Credentials.INSTALL_ACTION); + PackageParser.Package certInstallerPackage = getDefaultSystemHandlerActivityPackageLPr( + certInstallerIntent, userId); + if (certInstallerPackage != null + && doesPackageSupportRuntimePermissions(certInstallerPackage)) { + grantRuntimePermissionsLPw(certInstallerPackage, STORAGE_PERMISSIONS, true, userId); + } + // Dialer if (dialerAppPackageNames == null) { Intent dialerIntent = new Intent(Intent.ACTION_DIAL);