diff --git a/services/core/java/com/android/server/pm/PackageManagerService.java b/services/core/java/com/android/server/pm/PackageManagerService.java index 09e4e602bbd78..89e245cd8568a 100644 --- a/services/core/java/com/android/server/pm/PackageManagerService.java +++ b/services/core/java/com/android/server/pm/PackageManagerService.java @@ -7238,8 +7238,8 @@ public class PackageManagerService extends IPackageManager.Stub resolveInfos.set(i, installerInfo); continue; } - // caller is a full app if (ephemeralPkgName == null) { + // caller is a full app SettingBase callingSetting = mSettings.getSettingLPr(UserHandle.getAppId(filterCallingUid)); PackageSetting resolvedSetting = @@ -7259,11 +7259,9 @@ public class PackageManagerService extends IPackageManager.Stub && intent.getComponent() == null) { // ephemeral apps can launch other ephemeral apps indirectly continue; - } - // allow activities that have been explicitly exposed to ephemeral apps - final boolean isEphemeralApp = info.activityInfo.applicationInfo.isInstantApp(); - if (!isEphemeralApp - && ((info.activityInfo.flags & ActivityInfo.FLAG_VISIBLE_TO_INSTANT_APP) != 0)) { + } else if (((info.activityInfo.flags & ActivityInfo.FLAG_VISIBLE_TO_INSTANT_APP) != 0) + && !info.activityInfo.applicationInfo.isInstantApp()) { + // allow activities that have been explicitly exposed to ephemeral apps continue; } resolveInfos.remove(i);