diff options
| -rw-r--r-- | services/core/java/com/android/server/am/ActivityManagerService.java | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/services/core/java/com/android/server/am/ActivityManagerService.java b/services/core/java/com/android/server/am/ActivityManagerService.java index e28170f63795..683b730b4f45 100644 --- a/services/core/java/com/android/server/am/ActivityManagerService.java +++ b/services/core/java/com/android/server/am/ActivityManagerService.java @@ -14372,6 +14372,10 @@ public class ActivityManagerService extends IActivityManager.Stub app.processName, app.toShortString(), cpuLimit, app)) { mHandler.post(() -> { synchronized (ActivityManagerService.this) { + if (app.getThread() == null + || app.mState.getSetProcState() < ActivityManager.PROCESS_STATE_HOME) { + return; + } app.killLocked("excessive cpu " + cpuTimeUsed + " during " + uptimeSince + " dur=" + checkDur + " limit=" + cpuLimit, ApplicationExitInfo.REASON_EXCESSIVE_RESOURCE_USAGE, @@ -14397,6 +14401,10 @@ public class ActivityManagerService extends IActivityManager.Stub app.processName, r.toString(), cpuLimit, app)) { mHandler.post(() -> { synchronized (ActivityManagerService.this) { + if (app.getThread() == null + || app.mState.getSetProcState() < ActivityManager.PROCESS_STATE_HOME) { + return; + } mPhantomProcessList.killPhantomProcessGroupLocked(app, r, ApplicationExitInfo.REASON_EXCESSIVE_RESOURCE_USAGE, ApplicationExitInfo.SUBREASON_EXCESSIVE_CPU, |