Loading core/java/android/os/Process.java +8 −2 Original line number Diff line number Diff line Loading @@ -398,6 +398,9 @@ public class Process { * make easily identifyable processes even if you are using the same base * <var>processClass</var> to start them. * * When invokeWith is not null, the process will be started as a fresh app * and not a zygote fork. Note that this is only allowed for uid 0. * * @param processClass The class to use as the process's main entry * point. * @param niceName A more readable name to use for the process. Loading @@ -410,6 +413,7 @@ public class Process { * @param abi non-null the ABI this app should be started with. * @param instructionSet null-ok the instruction set to use. * @param appDataDir null-ok the data directory of the app. * @param invokeWith null-ok the command to invoke with. * @param zygoteArgs Additional arguments to supply to the zygote process. * * @return An object that describes the result of the attempt to start the process. Loading @@ -426,10 +430,11 @@ public class Process { String abi, String instructionSet, String appDataDir, String invokeWith, String[] zygoteArgs) { return zygoteProcess.start(processClass, niceName, uid, gid, gids, debugFlags, mountExternal, targetSdkVersion, seInfo, abi, instructionSet, appDataDir, zygoteArgs); abi, instructionSet, appDataDir, invokeWith, zygoteArgs); } /** @hide */ Loading @@ -442,10 +447,11 @@ public class Process { String abi, String instructionSet, String appDataDir, String invokeWith, String[] zygoteArgs) { return WebViewZygote.getProcess().start(processClass, niceName, uid, gid, gids, debugFlags, mountExternal, targetSdkVersion, seInfo, abi, instructionSet, appDataDir, zygoteArgs); abi, instructionSet, appDataDir, invokeWith, zygoteArgs); } /** Loading core/java/android/os/ZygoteProcess.java +12 −1 Original line number Diff line number Diff line Loading @@ -170,6 +170,9 @@ public class ZygoteProcess { * make easily identifyable processes even if you are using the same base * <var>processClass</var> to start them. * * When invokeWith is not null, the process will be started as a fresh app * and not a zygote fork. Note that this is only allowed for uid 0. * * @param processClass The class to use as the process's main entry * point. * @param niceName A more readable name to use for the process. Loading @@ -182,6 +185,7 @@ public class ZygoteProcess { * @param abi non-null the ABI this app should be started with. * @param instructionSet null-ok the instruction set to use. * @param appDataDir null-ok the data directory of the app. * @param invokeWith null-ok the command to invoke with. * @param zygoteArgs Additional arguments to supply to the zygote process. * * @return An object that describes the result of the attempt to start the process. Loading @@ -196,11 +200,12 @@ public class ZygoteProcess { String abi, String instructionSet, String appDataDir, String invokeWith, String[] zygoteArgs) { try { return startViaZygote(processClass, niceName, uid, gid, gids, debugFlags, mountExternal, targetSdkVersion, seInfo, abi, instructionSet, appDataDir, zygoteArgs); abi, instructionSet, appDataDir, invokeWith, zygoteArgs); } catch (ZygoteStartFailedEx ex) { Log.e(LOG_TAG, "Starting VM process through Zygote failed"); Loading Loading @@ -330,6 +335,7 @@ public class ZygoteProcess { String abi, String instructionSet, String appDataDir, String invokeWith, String[] extraArgs) throws ZygoteStartFailedEx { ArrayList<String> argsForZygote = new ArrayList<String>(); Loading Loading @@ -407,6 +413,11 @@ public class ZygoteProcess { argsForZygote.add("--app-data-dir=" + appDataDir); } if (invokeWith != null) { argsForZygote.add("--invoke-with"); argsForZygote.add(invokeWith); } argsForZygote.add(processClass); if (extraArgs != null) { Loading services/core/java/com/android/server/am/ActivityManagerService.java +2 −2 Original line number Diff line number Diff line Loading @@ -3810,12 +3810,12 @@ public final class ActivityManagerService extends ActivityManagerNative startResult = Process.startWebView(entryPoint, app.processName, uid, uid, gids, debugFlags, mountExternal, app.info.targetSdkVersion, app.info.seinfo, requiredAbi, instructionSet, app.info.dataDir, entryPointArgs); app.info.dataDir, null, entryPointArgs); } else { startResult = Process.start(entryPoint, app.processName, uid, uid, gids, debugFlags, mountExternal, app.info.targetSdkVersion, app.info.seinfo, requiredAbi, instructionSet, app.info.dataDir, entryPointArgs); app.info.dataDir, null, entryPointArgs); } checkTime(startTime, "startProcess: returned from zygote!"); Trace.traceEnd(Trace.TRACE_TAG_ACTIVITY_MANAGER); Loading Loading
core/java/android/os/Process.java +8 −2 Original line number Diff line number Diff line Loading @@ -398,6 +398,9 @@ public class Process { * make easily identifyable processes even if you are using the same base * <var>processClass</var> to start them. * * When invokeWith is not null, the process will be started as a fresh app * and not a zygote fork. Note that this is only allowed for uid 0. * * @param processClass The class to use as the process's main entry * point. * @param niceName A more readable name to use for the process. Loading @@ -410,6 +413,7 @@ public class Process { * @param abi non-null the ABI this app should be started with. * @param instructionSet null-ok the instruction set to use. * @param appDataDir null-ok the data directory of the app. * @param invokeWith null-ok the command to invoke with. * @param zygoteArgs Additional arguments to supply to the zygote process. * * @return An object that describes the result of the attempt to start the process. Loading @@ -426,10 +430,11 @@ public class Process { String abi, String instructionSet, String appDataDir, String invokeWith, String[] zygoteArgs) { return zygoteProcess.start(processClass, niceName, uid, gid, gids, debugFlags, mountExternal, targetSdkVersion, seInfo, abi, instructionSet, appDataDir, zygoteArgs); abi, instructionSet, appDataDir, invokeWith, zygoteArgs); } /** @hide */ Loading @@ -442,10 +447,11 @@ public class Process { String abi, String instructionSet, String appDataDir, String invokeWith, String[] zygoteArgs) { return WebViewZygote.getProcess().start(processClass, niceName, uid, gid, gids, debugFlags, mountExternal, targetSdkVersion, seInfo, abi, instructionSet, appDataDir, zygoteArgs); abi, instructionSet, appDataDir, invokeWith, zygoteArgs); } /** Loading
core/java/android/os/ZygoteProcess.java +12 −1 Original line number Diff line number Diff line Loading @@ -170,6 +170,9 @@ public class ZygoteProcess { * make easily identifyable processes even if you are using the same base * <var>processClass</var> to start them. * * When invokeWith is not null, the process will be started as a fresh app * and not a zygote fork. Note that this is only allowed for uid 0. * * @param processClass The class to use as the process's main entry * point. * @param niceName A more readable name to use for the process. Loading @@ -182,6 +185,7 @@ public class ZygoteProcess { * @param abi non-null the ABI this app should be started with. * @param instructionSet null-ok the instruction set to use. * @param appDataDir null-ok the data directory of the app. * @param invokeWith null-ok the command to invoke with. * @param zygoteArgs Additional arguments to supply to the zygote process. * * @return An object that describes the result of the attempt to start the process. Loading @@ -196,11 +200,12 @@ public class ZygoteProcess { String abi, String instructionSet, String appDataDir, String invokeWith, String[] zygoteArgs) { try { return startViaZygote(processClass, niceName, uid, gid, gids, debugFlags, mountExternal, targetSdkVersion, seInfo, abi, instructionSet, appDataDir, zygoteArgs); abi, instructionSet, appDataDir, invokeWith, zygoteArgs); } catch (ZygoteStartFailedEx ex) { Log.e(LOG_TAG, "Starting VM process through Zygote failed"); Loading Loading @@ -330,6 +335,7 @@ public class ZygoteProcess { String abi, String instructionSet, String appDataDir, String invokeWith, String[] extraArgs) throws ZygoteStartFailedEx { ArrayList<String> argsForZygote = new ArrayList<String>(); Loading Loading @@ -407,6 +413,11 @@ public class ZygoteProcess { argsForZygote.add("--app-data-dir=" + appDataDir); } if (invokeWith != null) { argsForZygote.add("--invoke-with"); argsForZygote.add(invokeWith); } argsForZygote.add(processClass); if (extraArgs != null) { Loading
services/core/java/com/android/server/am/ActivityManagerService.java +2 −2 Original line number Diff line number Diff line Loading @@ -3810,12 +3810,12 @@ public final class ActivityManagerService extends ActivityManagerNative startResult = Process.startWebView(entryPoint, app.processName, uid, uid, gids, debugFlags, mountExternal, app.info.targetSdkVersion, app.info.seinfo, requiredAbi, instructionSet, app.info.dataDir, entryPointArgs); app.info.dataDir, null, entryPointArgs); } else { startResult = Process.start(entryPoint, app.processName, uid, uid, gids, debugFlags, mountExternal, app.info.targetSdkVersion, app.info.seinfo, requiredAbi, instructionSet, app.info.dataDir, entryPointArgs); app.info.dataDir, null, entryPointArgs); } checkTime(startTime, "startProcess: returned from zygote!"); Trace.traceEnd(Trace.TRACE_TAG_ACTIVITY_MANAGER); Loading