diff options
| author | 2018-01-25 08:59:28 +0000 | |
|---|---|---|
| committer | 2018-01-25 08:59:28 +0000 | |
| commit | d2204db2c686f9691323e24d760c0935d0bce178 (patch) | |
| tree | 8f1fdf01e6fb12b4d7fe680dd021d19f9299284b | |
| parent | c510a619bcf444da7fafcffa77628e83835308d2 (diff) | |
| parent | 11d21a29767cedf62aa9dcc8708a828867491840 (diff) | |
Merge "Rewrite handling of oob priv-apps in framework."
| -rw-r--r-- | services/core/java/com/android/server/am/ActivityManagerService.java | 1 | ||||
| -rw-r--r-- | services/core/java/com/android/server/pm/PackageDexOptimizer.java | 10 |
2 files changed, 5 insertions, 6 deletions
diff --git a/services/core/java/com/android/server/am/ActivityManagerService.java b/services/core/java/com/android/server/am/ActivityManagerService.java index fcbcce4181e3..fbcc8ac3576b 100644 --- a/services/core/java/com/android/server/am/ActivityManagerService.java +++ b/services/core/java/com/android/server/am/ActivityManagerService.java @@ -4063,7 +4063,6 @@ public class ActivityManagerService extends IActivityManager.Stub if (app.info.isPrivilegedApp() && SystemProperties.getBoolean("pm.dexopt.priv-apps-oob", false)) { - runtimeFlags |= Zygote.DISABLE_VERIFIER; runtimeFlags |= Zygote.ONLY_USE_SYSTEM_OAT_FILES; } diff --git a/services/core/java/com/android/server/pm/PackageDexOptimizer.java b/services/core/java/com/android/server/pm/PackageDexOptimizer.java index 6a08e1b5953a..324dc5fb8656 100644 --- a/services/core/java/com/android/server/pm/PackageDexOptimizer.java +++ b/services/core/java/com/android/server/pm/PackageDexOptimizer.java @@ -111,11 +111,6 @@ public class PackageDexOptimizer { return false; } - // We do not dexopt a priv-app package when pm.dexopt.priv-apps-oob is true. - if (pkg.isPrivileged()) { - return !SystemProperties.getBoolean("pm.dexopt.priv-apps-oob", false); - } - return true; } @@ -481,6 +476,11 @@ public class PackageDexOptimizer { boolean isUsedByOtherApps) { int flags = info.flags; boolean vmSafeMode = (flags & ApplicationInfo.FLAG_VM_SAFE_MODE) != 0; + // When pm.dexopt.priv-apps-oob is true, we only verify privileged apps. + if (info.isPrivilegedApp() && + SystemProperties.getBoolean("pm.dexopt.priv-apps-oob", false)) { + return "verify"; + } if (vmSafeMode) { return getSafeModeCompilerFilter(targetCompilerFilter); } |