summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTreehugger Robot <android-test-infra-autosubmit@system.gserviceaccount.com>2024-05-17 21:34:05 +0000
committerGerrit Code Review <noreply-gerritcodereview@google.com>2024-05-17 21:34:05 +0000
commitaa39856ae61b03ad3ff2c7972eb7ff79245cbafa (patch)
tree400e316b910d07087c31edd1b9e0589d53e6f1e6
parente4596c37cbb7eb2242ce31b6bb73ebce906647fe (diff)
parent5f95234c95b68c988ec9ef4307d4ba21464c71ae (diff)
Merge "Disable following applications at runtime" into u-keystone-qcom-dev
-rw-r--r--services/core/java/com/android/server/pm/InstallPackageHelper.java30
1 files changed, 30 insertions, 0 deletions
diff --git a/services/core/java/com/android/server/pm/InstallPackageHelper.java b/services/core/java/com/android/server/pm/InstallPackageHelper.java
index f72e8ab353bc..7312b4282d74 100644
--- a/services/core/java/com/android/server/pm/InstallPackageHelper.java
+++ b/services/core/java/com/android/server/pm/InstallPackageHelper.java
@@ -248,6 +248,15 @@ final class InstallPackageHelper {
*/
final private HashMap<String, String> mPackagesToBeDisabled = new HashMap<>();
+ /**
+ * Tracks packages that need to be disabled for QSPA enabled taregts.
+ * List of packages path on the file system.
+ */
+ final private List<String> mPackagesPathToBeDisabledForQSPA = new ArrayList<String>();
+ final private boolean mQspaEnabled = SystemProperties.getBoolean(
+ "ro.vendor.config.qspa.apps", false);
+
+
// TODO(b/198166813): remove PMS dependency
InstallPackageHelper(PackageManagerService pm, AppDataHelper appDataHelper) {
mPm = pm;
@@ -265,6 +274,18 @@ final class InstallPackageHelper {
mViewCompiler = pm.mInjector.getViewCompiler();
mSharedLibraries = pm.mInjector.getSharedLibrariesImpl();
mUpdateOwnershipHelper = pm.mInjector.getUpdateOwnershipHelper();
+
+ if (mQspaEnabled) {
+ mPackagesPathToBeDisabledForQSPA.add("/system_ext/priv-app/SystemUI");
+ mPackagesPathToBeDisabledForQSPA.add("/system_ext/priv-app/Launcher3QuickStepGo");
+ mPackagesPathToBeDisabledForQSPA.add("/system_ext/priv-app/Launcher3Go");
+ mPackagesPathToBeDisabledForQSPA.add("/system/app/PrintSpooler");
+ mPackagesPathToBeDisabledForQSPA.add("/system/priv-app/StatementService");
+ mPackagesPathToBeDisabledForQSPA.add("/product/app/Calendar");
+ } else {
+ mPackagesPathToBeDisabledForQSPA.add("/system_ext/app/HeadlessLauncher");
+ }
+
}
InstallPackageHelper(PackageManagerService pm) {
@@ -3767,6 +3788,15 @@ final class InstallPackageHelper {
cacher.cleanCachedResult(file);
}
+
+ if (mPackagesPathToBeDisabledForQSPA != null &&
+ mPackagesPathToBeDisabledForQSPA.contains(file.toString())) {
+ // Ignore entries contained in {@link #mPackagesPathToBeDisabledForQSPA}
+ Slog.d(TAG, "QSPA is " + mQspaEnabled + " ignoring package for install : " + file);
+ continue;
+ }
+
+
if (mPackagesToBeDisabled.values() != null &&
(mPackagesToBeDisabled.values().contains(file.toString()) ||
mPackagesToBeDisabled.values().stream().anyMatch(file.toString()::contains))) {