diff --git a/services/core/java/com/android/server/pm/UserSystemPackageInstaller.java b/services/core/java/com/android/server/pm/UserSystemPackageInstaller.java index 937b2cf047a49..b57d4d55b6ebc 100644 --- a/services/core/java/com/android/server/pm/UserSystemPackageInstaller.java +++ b/services/core/java/com/android/server/pm/UserSystemPackageInstaller.java @@ -219,38 +219,21 @@ class UserSystemPackageInstaller { // Install/uninstall system packages per user. for (int userId : mUm.getUserIds()) { - final Set userWhitelist = getInstallablePackagesForUserId(userId); + final Set userAllowlist = getInstallablePackagesForUserId(userId); - // If null, run for all packages - if (userWhitelist == null) { - pmInt.forEachPackageState(packageState -> { - if (packageState.getPkg() == null) { - return; - } - final boolean install = !packageState.getTransientState() - .isHiddenUntilInstalled(); - if (packageState.getUserStateOrDefault(userId).isInstalled() != install - && shouldChangeInstallationState(packageState, install, userId, - isFirstBoot, isConsideredUpgrade, preExistingPackages)) { - changesToCommit.add(userId, packageState.getPackageName(), install); - } - }); - } else { - for (String packageName : userWhitelist) { - PackageStateInternal packageState = pmInt.getPackageStateInternal(packageName); - if (packageState.getPkg() == null) { - continue; - } - - final boolean install = !packageState.getTransientState() - .isHiddenUntilInstalled(); - if (packageState.getUserStateOrDefault(userId).isInstalled() != install - && shouldChangeInstallationState(packageState, install, userId, - isFirstBoot, isConsideredUpgrade, preExistingPackages)) { - changesToCommit.add(userId, packageState.getPackageName(), install); - } + pmInt.forEachPackageState(packageState -> { + if (packageState.getPkg() == null) { + return; } - } + boolean install = (userAllowlist == null + || userAllowlist.contains(packageState.getPackageName())) + && !packageState.getTransientState().isHiddenUntilInstalled(); + if (packageState.getUserStateOrDefault(userId).isInstalled() != install + && shouldChangeInstallationState(packageState, install, userId, + isFirstBoot, isConsideredUpgrade, preExistingPackages)) { + changesToCommit.add(userId, packageState.getPackageName(), install); + } + }); } pmInt.commitPackageStateMutation(null, packageStateMutator -> {