summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlex Buynytskyy <alexbuy@google.com>2023-12-20 01:50:36 +0000
committerAlex Buynytskyy <alexbuy@google.com>2024-01-07 23:27:46 +0000
commitc61ee9f45233a35da687942d5af24a5d09568a6c (patch)
treeb8b8fe9daec70e39fe192d9cbfe8f5124888ef70
parent04f8703be421ea359d8ba17118dce5fe7f02d4d7 (diff)
downloadbase-c61ee9f45233a35da687942d5af24a5d09568a6c.tar.gz
Disallow system apps to be installed/updated as instant.
Bug: 299441833 Test: atest android.content.pm.cts.PackageManagerTest Change-Id: Idd89a6dd72f0e68259095f677185f0494391025c Merged-In: Idd89a6dd72f0e68259095f677185f0494391025c (cherry picked from commit 496e78a1951f2ed69290f03c5625c0f8382f4d31)
-rw-r--r--services/core/java/com/android/server/pm/InstallPackageHelper.java3
1 files changed, 3 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 37d4af831c77..b541e33bde9e 100644
--- a/services/core/java/com/android/server/pm/InstallPackageHelper.java
+++ b/services/core/java/com/android/server/pm/InstallPackageHelper.java
@@ -559,6 +559,9 @@ final class InstallPackageHelper {
if (pkgSetting == null) {
return PackageManager.INSTALL_FAILED_INVALID_URI;
}
+ if (instantApp && (pkgSetting.isSystem() || pkgSetting.isUpdatedSystemApp())) {
+ return PackageManager.INSTALL_FAILED_INVALID_URI;
+ }
if (!snapshot.canViewInstantApps(callingUid, UserHandle.getUserId(callingUid))) {
// only allow the existing package to be used if it's installed as a full
// application for at least one user