Merge "Wait for installd to start to perform dexopt operation" am: 3f0f0b686a am: ee20cc3ca1
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1615847 MUST ONLY BE SUBMITTED BY AUTOMERGER Change-Id: I4b80a78b7e017e7c8bce69d856b321de6dc9357d
This commit is contained in:
@@ -648,8 +648,6 @@ public class ZygoteInit {
|
|||||||
*/
|
*/
|
||||||
private static void performSystemServerDexOpt(String classPath) {
|
private static void performSystemServerDexOpt(String classPath) {
|
||||||
final String[] classPathElements = classPath.split(":");
|
final String[] classPathElements = classPath.split(":");
|
||||||
final IInstalld installd = IInstalld.Stub
|
|
||||||
.asInterface(ServiceManager.getService("installd"));
|
|
||||||
final String instructionSet = VMRuntime.getRuntime().vmInstructionSet();
|
final String instructionSet = VMRuntime.getRuntime().vmInstructionSet();
|
||||||
|
|
||||||
String classPathForElement = "";
|
String classPathForElement = "";
|
||||||
@@ -686,6 +684,10 @@ public class ZygoteInit {
|
|||||||
final String uuid = StorageManager.UUID_PRIVATE_INTERNAL;
|
final String uuid = StorageManager.UUID_PRIVATE_INTERNAL;
|
||||||
final String seInfo = null;
|
final String seInfo = null;
|
||||||
final int targetSdkVersion = 0; // SystemServer targets the system's SDK version
|
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 {
|
try {
|
||||||
installd.dexopt(classPathElement, Process.SYSTEM_UID, packageName,
|
installd.dexopt(classPathElement, Process.SYSTEM_UID, packageName,
|
||||||
instructionSet, dexoptNeeded, outputPath, dexFlags, systemServerFilter,
|
instructionSet, dexoptNeeded, outputPath, dexFlags, systemServerFilter,
|
||||||
|
|||||||
Reference in New Issue
Block a user