Merge "Introduce ZygoteInit.preForkInit()."

This commit is contained in:
Tobias Thierer
2019-09-26 18:38:39 +00:00
committed by Gerrit Code Review
2 changed files with 12 additions and 3 deletions

View File

@@ -192,6 +192,15 @@ public class RuntimeInit {
}
}
/**
* Common initialization that (unlike {@link #commonInit()} should happen prior to
* the Zygote fork.
*/
public static void preForkInit() {
if (DEBUG) Slog.d(TAG, "Entered preForkInit.");
RuntimeInit.enableDdms();
}
@UnsupportedAppUsage
protected static final void commonInit() {
if (DEBUG) Slog.d(TAG, "Entered RuntimeInit!");
@@ -324,7 +333,7 @@ public class RuntimeInit {
@UnsupportedAppUsage
public static final void main(String[] argv) {
enableDdms();
preForkInit();
if (argv.length == 2 && argv[1].equals("application")) {
if (DEBUG) Slog.d(TAG, "RuntimeInit: Starting application");
redirectLogStreams();
@@ -418,7 +427,7 @@ public class RuntimeInit {
/**
* Enable DDMS.
*/
static final void enableDdms() {
private static void enableDdms() {
// Register handlers for DDM messages.
android.ddm.DdmRegister.registerHandlers();
}

View File

@@ -835,7 +835,7 @@ public class ZygoteInit {
TimingsTraceLog bootTimingsTraceLog = new TimingsTraceLog(bootTimeTag,
Trace.TRACE_TAG_DALVIK);
bootTimingsTraceLog.traceBegin("ZygoteInit");
RuntimeInit.enableDdms();
RuntimeInit.preForkInit();
boolean startSystemServer = false;
String zygoteSocketName = "zygote";