Loading core/api/current.txt +5 −2 Original line number Diff line number Diff line Loading @@ -31967,8 +31967,10 @@ package android.os { method public static final long getElapsedCpuTime(); method public static final int[] getExclusiveCores(); method public static final int getGidForName(String); method public static final long getStartElapsedRealtime(); method public static final long getStartUptimeMillis(); method public static long getStartElapsedRealtime(); method public static long getStartRequestedElapsedRealtime(); method public static long getStartRequestedUptimeMillis(); method public static long getStartUptimeMillis(); method public static final int getThreadPriority(int) throws java.lang.IllegalArgumentException; method public static final int getUidForName(String); method public static final boolean is64Bit(); Loading @@ -31976,6 +31978,7 @@ package android.os { method public static final boolean isIsolated(); method public static final void killProcess(int); method public static final int myPid(); method @NonNull public static String myProcessName(); method public static final int myTid(); method public static final int myUid(); method public static android.os.UserHandle myUserHandle(); core/java/android/app/ActivityThread.java +11 −2 Original line number Diff line number Diff line Loading @@ -37,8 +37,10 @@ import static android.window.ConfigurationHelper.shouldUpdateResources; import static com.android.internal.annotations.VisibleForTesting.Visibility.PACKAGE; import android.annotation.ElapsedRealtimeLong; import android.annotation.NonNull; import android.annotation.Nullable; import android.annotation.UptimeMillisLong; import android.app.assist.AssistContent; import android.app.assist.AssistStructure; import android.app.backup.BackupAgent; Loading Loading @@ -888,6 +890,9 @@ public final class ActivityThread extends ClientTransactionHandler SharedMemory mSerializedSystemFontMap; long startRequestedElapsedTime; long startRequestedUptime; @Override public String toString() { return "AppBindData{appInfo=" + appInfo + "}"; Loading Loading @@ -1099,7 +1104,8 @@ public final class ActivityThread extends ClientTransactionHandler CompatibilityInfo compatInfo, Map services, Bundle coreSettings, String buildSerial, AutofillOptions autofillOptions, ContentCaptureOptions contentCaptureOptions, long[] disabledCompatChanges, SharedMemory serializedSystemFontMap) { SharedMemory serializedSystemFontMap, long startRequestedElapsedTime, long startRequestedUptime) { if (services != null) { if (false) { // Test code to make sure the app could see the passed-in services. Loading Loading @@ -1149,6 +1155,8 @@ public final class ActivityThread extends ClientTransactionHandler data.contentCaptureOptions = contentCaptureOptions; data.disabledCompatChanges = disabledCompatChanges; data.mSerializedSystemFontMap = serializedSystemFontMap; data.startRequestedElapsedTime = startRequestedElapsedTime; data.startRequestedUptime = startRequestedUptime; sendMessage(H.BIND_APPLICATION, data); } Loading Loading @@ -6407,7 +6415,8 @@ public final class ActivityThread extends ClientTransactionHandler DdmVmInternal.setRecentAllocationsTrackingEnabled(true); } // Note when this process has started. Process.setStartTimes(SystemClock.elapsedRealtime(), SystemClock.uptimeMillis()); Process.setStartTimes(SystemClock.elapsedRealtime(), SystemClock.uptimeMillis(), data.startRequestedElapsedTime, data.startRequestedUptime); AppCompatCallbacks.install(data.disabledCompatChanges); // Let libcore handle any compat changes after installing the list of compat changes. Loading core/java/android/app/IApplicationThread.aidl +2 −1 Original line number Diff line number Diff line Loading @@ -80,7 +80,8 @@ oneway interface IApplicationThread { in CompatibilityInfo compatInfo, in Map services, in Bundle coreSettings, in String buildSerial, in AutofillOptions autofillOptions, in ContentCaptureOptions contentCaptureOptions, in long[] disabledCompatChanges, in SharedMemory serializedSystemFontMap); in SharedMemory serializedSystemFontMap, long startRequestedElapsedTime, long startRequestedUptime); void runIsolatedEntryPoint(in String entryPoint, in String[] entryPointArgs); void scheduleExit(); void scheduleServiceArgs(IBinder token, in ParceledListSlice args); Loading core/java/android/os/Process.java +72 −5 Original line number Diff line number Diff line Loading @@ -18,11 +18,14 @@ package android.os; import static android.annotation.SystemApi.Client.MODULE_LIBRARIES; import android.annotation.ElapsedRealtimeLong; import android.annotation.NonNull; import android.annotation.Nullable; import android.annotation.SystemApi; import android.annotation.TestApi; import android.annotation.UptimeMillisLong; import android.compat.annotation.UnsupportedAppUsage; import android.os.Build.VERSION_CODES; import android.system.ErrnoException; import android.system.Os; import android.system.OsConstants; Loading Loading @@ -553,9 +556,26 @@ public class Process { public static final int SIGNAL_KILL = 9; public static final int SIGNAL_USR1 = 10; /** * When the process started and ActivityThread.handleBindApplication() was executed. */ private static long sStartElapsedRealtime; /** * When the process started and ActivityThread.handleBindApplication() was executed. */ private static long sStartUptimeMillis; /** * When the activity manager was about to ask zygote to fork. */ private static long sStartRequestedElapsedRealtime; /** * When the activity manager was about to ask zygote to fork. */ private static long sStartRequestedUptimeMillis; private static final int PIDFD_UNKNOWN = 0; private static final int PIDFD_SUPPORTED = 1; private static final int PIDFD_UNSUPPORTED = 2; Loading Loading @@ -605,6 +625,12 @@ public class Process { */ public static final ZygoteProcess ZYGOTE_PROCESS = new ZygoteProcess(); /** * The process name set via {@link #setArgV0(String)}. */ private static String sArgV0; /** * Start a new process. * Loading Loading @@ -718,21 +744,44 @@ public class Process { /** * Return the {@link SystemClock#elapsedRealtime()} at which this process was started. */ public static final long getStartElapsedRealtime() { @ElapsedRealtimeLong public static long getStartElapsedRealtime() { return sStartElapsedRealtime; } /** * Return the {@link SystemClock#uptimeMillis()} at which this process was started. */ public static final long getStartUptimeMillis() { @UptimeMillisLong public static long getStartUptimeMillis() { return sStartUptimeMillis; } /** * Return the {@link SystemClock#elapsedRealtime()} at which the system decides to start * this process. */ @ElapsedRealtimeLong public static long getStartRequestedElapsedRealtime() { return sStartRequestedElapsedRealtime; } /** * Return the {@link SystemClock#uptimeMillis()} at which the system decides to start * this process. */ @UptimeMillisLong public static long getStartRequestedUptimeMillis() { return sStartRequestedUptimeMillis; } /** @hide */ public static final void setStartTimes(long elapsedRealtime, long uptimeMillis) { public static final void setStartTimes(long elapsedRealtime, long uptimeMillis, long startRequestedElapsedRealtime, long startRequestedUptime) { sStartElapsedRealtime = elapsedRealtime; sStartUptimeMillis = uptimeMillis; sStartRequestedElapsedRealtime = startRequestedElapsedRealtime; sStartRequestedUptimeMillis = startRequestedUptime; } /** Loading Loading @@ -1135,8 +1184,26 @@ public class Process { * * {@hide} */ @UnsupportedAppUsage public static final native void setArgV0(String text); @UnsupportedAppUsage(maxTargetSdk = VERSION_CODES.S, publicAlternatives = "Do not try to " + "change the process name. (If you must, you could use {@code pthread_setname_np(3)}, " + "but this could confuse the system)") public static void setArgV0(@NonNull String text) { sArgV0 = text; setArgV0Native(text); } private static native void setArgV0Native(String text); /** * Return the name of this process. */ @NonNull public static String myProcessName() { // Note this could be different from the actual process name if someone changes the // process name using native code (using pthread_setname_np()). But sArgV0 // is the name that the system thinks this process has. return sArgV0; } /** * Kill the process with the given PID. Loading core/jni/android_util_Process.cpp +1 −1 Original line number Diff line number Diff line Loading @@ -1346,7 +1346,7 @@ static const JNINativeMethod methods[] = { {"createProcessGroup", "(II)I", (void*)android_os_Process_createProcessGroup}, {"getExclusiveCores", "()[I", (void*)android_os_Process_getExclusiveCores}, {"setSwappiness", "(IZ)Z", (void*)android_os_Process_setSwappiness}, {"setArgV0", "(Ljava/lang/String;)V", (void*)android_os_Process_setArgV0}, {"setArgV0Native", "(Ljava/lang/String;)V", (void*)android_os_Process_setArgV0}, {"setUid", "(I)I", (void*)android_os_Process_setUid}, {"setGid", "(I)I", (void*)android_os_Process_setGid}, {"sendSignal", "(II)V", (void*)android_os_Process_sendSignal}, Loading Loading
core/api/current.txt +5 −2 Original line number Diff line number Diff line Loading @@ -31967,8 +31967,10 @@ package android.os { method public static final long getElapsedCpuTime(); method public static final int[] getExclusiveCores(); method public static final int getGidForName(String); method public static final long getStartElapsedRealtime(); method public static final long getStartUptimeMillis(); method public static long getStartElapsedRealtime(); method public static long getStartRequestedElapsedRealtime(); method public static long getStartRequestedUptimeMillis(); method public static long getStartUptimeMillis(); method public static final int getThreadPriority(int) throws java.lang.IllegalArgumentException; method public static final int getUidForName(String); method public static final boolean is64Bit(); Loading @@ -31976,6 +31978,7 @@ package android.os { method public static final boolean isIsolated(); method public static final void killProcess(int); method public static final int myPid(); method @NonNull public static String myProcessName(); method public static final int myTid(); method public static final int myUid(); method public static android.os.UserHandle myUserHandle();
core/java/android/app/ActivityThread.java +11 −2 Original line number Diff line number Diff line Loading @@ -37,8 +37,10 @@ import static android.window.ConfigurationHelper.shouldUpdateResources; import static com.android.internal.annotations.VisibleForTesting.Visibility.PACKAGE; import android.annotation.ElapsedRealtimeLong; import android.annotation.NonNull; import android.annotation.Nullable; import android.annotation.UptimeMillisLong; import android.app.assist.AssistContent; import android.app.assist.AssistStructure; import android.app.backup.BackupAgent; Loading Loading @@ -888,6 +890,9 @@ public final class ActivityThread extends ClientTransactionHandler SharedMemory mSerializedSystemFontMap; long startRequestedElapsedTime; long startRequestedUptime; @Override public String toString() { return "AppBindData{appInfo=" + appInfo + "}"; Loading Loading @@ -1099,7 +1104,8 @@ public final class ActivityThread extends ClientTransactionHandler CompatibilityInfo compatInfo, Map services, Bundle coreSettings, String buildSerial, AutofillOptions autofillOptions, ContentCaptureOptions contentCaptureOptions, long[] disabledCompatChanges, SharedMemory serializedSystemFontMap) { SharedMemory serializedSystemFontMap, long startRequestedElapsedTime, long startRequestedUptime) { if (services != null) { if (false) { // Test code to make sure the app could see the passed-in services. Loading Loading @@ -1149,6 +1155,8 @@ public final class ActivityThread extends ClientTransactionHandler data.contentCaptureOptions = contentCaptureOptions; data.disabledCompatChanges = disabledCompatChanges; data.mSerializedSystemFontMap = serializedSystemFontMap; data.startRequestedElapsedTime = startRequestedElapsedTime; data.startRequestedUptime = startRequestedUptime; sendMessage(H.BIND_APPLICATION, data); } Loading Loading @@ -6407,7 +6415,8 @@ public final class ActivityThread extends ClientTransactionHandler DdmVmInternal.setRecentAllocationsTrackingEnabled(true); } // Note when this process has started. Process.setStartTimes(SystemClock.elapsedRealtime(), SystemClock.uptimeMillis()); Process.setStartTimes(SystemClock.elapsedRealtime(), SystemClock.uptimeMillis(), data.startRequestedElapsedTime, data.startRequestedUptime); AppCompatCallbacks.install(data.disabledCompatChanges); // Let libcore handle any compat changes after installing the list of compat changes. Loading
core/java/android/app/IApplicationThread.aidl +2 −1 Original line number Diff line number Diff line Loading @@ -80,7 +80,8 @@ oneway interface IApplicationThread { in CompatibilityInfo compatInfo, in Map services, in Bundle coreSettings, in String buildSerial, in AutofillOptions autofillOptions, in ContentCaptureOptions contentCaptureOptions, in long[] disabledCompatChanges, in SharedMemory serializedSystemFontMap); in SharedMemory serializedSystemFontMap, long startRequestedElapsedTime, long startRequestedUptime); void runIsolatedEntryPoint(in String entryPoint, in String[] entryPointArgs); void scheduleExit(); void scheduleServiceArgs(IBinder token, in ParceledListSlice args); Loading
core/java/android/os/Process.java +72 −5 Original line number Diff line number Diff line Loading @@ -18,11 +18,14 @@ package android.os; import static android.annotation.SystemApi.Client.MODULE_LIBRARIES; import android.annotation.ElapsedRealtimeLong; import android.annotation.NonNull; import android.annotation.Nullable; import android.annotation.SystemApi; import android.annotation.TestApi; import android.annotation.UptimeMillisLong; import android.compat.annotation.UnsupportedAppUsage; import android.os.Build.VERSION_CODES; import android.system.ErrnoException; import android.system.Os; import android.system.OsConstants; Loading Loading @@ -553,9 +556,26 @@ public class Process { public static final int SIGNAL_KILL = 9; public static final int SIGNAL_USR1 = 10; /** * When the process started and ActivityThread.handleBindApplication() was executed. */ private static long sStartElapsedRealtime; /** * When the process started and ActivityThread.handleBindApplication() was executed. */ private static long sStartUptimeMillis; /** * When the activity manager was about to ask zygote to fork. */ private static long sStartRequestedElapsedRealtime; /** * When the activity manager was about to ask zygote to fork. */ private static long sStartRequestedUptimeMillis; private static final int PIDFD_UNKNOWN = 0; private static final int PIDFD_SUPPORTED = 1; private static final int PIDFD_UNSUPPORTED = 2; Loading Loading @@ -605,6 +625,12 @@ public class Process { */ public static final ZygoteProcess ZYGOTE_PROCESS = new ZygoteProcess(); /** * The process name set via {@link #setArgV0(String)}. */ private static String sArgV0; /** * Start a new process. * Loading Loading @@ -718,21 +744,44 @@ public class Process { /** * Return the {@link SystemClock#elapsedRealtime()} at which this process was started. */ public static final long getStartElapsedRealtime() { @ElapsedRealtimeLong public static long getStartElapsedRealtime() { return sStartElapsedRealtime; } /** * Return the {@link SystemClock#uptimeMillis()} at which this process was started. */ public static final long getStartUptimeMillis() { @UptimeMillisLong public static long getStartUptimeMillis() { return sStartUptimeMillis; } /** * Return the {@link SystemClock#elapsedRealtime()} at which the system decides to start * this process. */ @ElapsedRealtimeLong public static long getStartRequestedElapsedRealtime() { return sStartRequestedElapsedRealtime; } /** * Return the {@link SystemClock#uptimeMillis()} at which the system decides to start * this process. */ @UptimeMillisLong public static long getStartRequestedUptimeMillis() { return sStartRequestedUptimeMillis; } /** @hide */ public static final void setStartTimes(long elapsedRealtime, long uptimeMillis) { public static final void setStartTimes(long elapsedRealtime, long uptimeMillis, long startRequestedElapsedRealtime, long startRequestedUptime) { sStartElapsedRealtime = elapsedRealtime; sStartUptimeMillis = uptimeMillis; sStartRequestedElapsedRealtime = startRequestedElapsedRealtime; sStartRequestedUptimeMillis = startRequestedUptime; } /** Loading Loading @@ -1135,8 +1184,26 @@ public class Process { * * {@hide} */ @UnsupportedAppUsage public static final native void setArgV0(String text); @UnsupportedAppUsage(maxTargetSdk = VERSION_CODES.S, publicAlternatives = "Do not try to " + "change the process name. (If you must, you could use {@code pthread_setname_np(3)}, " + "but this could confuse the system)") public static void setArgV0(@NonNull String text) { sArgV0 = text; setArgV0Native(text); } private static native void setArgV0Native(String text); /** * Return the name of this process. */ @NonNull public static String myProcessName() { // Note this could be different from the actual process name if someone changes the // process name using native code (using pthread_setname_np()). But sArgV0 // is the name that the system thinks this process has. return sArgV0; } /** * Kill the process with the given PID. Loading
core/jni/android_util_Process.cpp +1 −1 Original line number Diff line number Diff line Loading @@ -1346,7 +1346,7 @@ static const JNINativeMethod methods[] = { {"createProcessGroup", "(II)I", (void*)android_os_Process_createProcessGroup}, {"getExclusiveCores", "()[I", (void*)android_os_Process_getExclusiveCores}, {"setSwappiness", "(IZ)Z", (void*)android_os_Process_setSwappiness}, {"setArgV0", "(Ljava/lang/String;)V", (void*)android_os_Process_setArgV0}, {"setArgV0Native", "(Ljava/lang/String;)V", (void*)android_os_Process_setArgV0}, {"setUid", "(I)I", (void*)android_os_Process_setUid}, {"setGid", "(I)I", (void*)android_os_Process_setGid}, {"sendSignal", "(II)V", (void*)android_os_Process_sendSignal}, Loading