Merge "Wait for installd to start to perform dexopt operation"

This commit is contained in:
Jeff Sharkey
2021-03-09 23:01:37 +00:00
committed by Gerrit Code Review

View File

@@ -648,8 +648,6 @@ public class ZygoteInit {
*/
private static void performSystemServerDexOpt(String classPath) {
final String[] classPathElements = classPath.split(":");
final IInstalld installd = IInstalld.Stub
.asInterface(ServiceManager.getService("installd"));
final String instructionSet = VMRuntime.getRuntime().vmInstructionSet();
String classPathForElement = "";
@@ -686,6 +684,10 @@ public class ZygoteInit {
final String uuid = StorageManager.UUID_PRIVATE_INTERNAL;
final String seInfo = null;
final int targetSdkVersion = 0; // SystemServer targets the system's SDK version
// Wait for installd to be made available
IInstalld installd = IInstalld.Stub.asInterface(
ServiceManager.waitForService("installd"));
try {
installd.dexopt(classPathElement, Process.SYSTEM_UID, packageName,
instructionSet, dexoptNeeded, outputPath, dexFlags, systemServerFilter,