From 05efd438fe69831bf5df9b38480eb68feb0ebe65 Mon Sep 17 00:00:00 2001 From: yuanhuihui Date: Mon, 12 Sep 2016 17:52:18 +0800 Subject: [PATCH] fix persistent process is killed and restart again and again start presistent app before system booting, in NewProcessRecordLocked will set persistent = true, but not set r.maxAdj = ProcessList.PERSISTENT_PROC_ADJ. so this process may become CACHED_EMPTY, then be killed. while persistent = true, will restart again. https://code.google.com/p/android/issues/detail?id=222224 Change-Id: I91b405ca3f3bbe8934e4a495d9a54eab4f51e21f --- .../core/java/com/android/server/am/ActivityManagerService.java | 1 + 1 file changed, 1 insertion(+) diff --git a/services/core/java/com/android/server/am/ActivityManagerService.java b/services/core/java/com/android/server/am/ActivityManagerService.java index 08b204af7fe71..76cfcaeb76ffd 100644 --- a/services/core/java/com/android/server/am/ActivityManagerService.java +++ b/services/core/java/com/android/server/am/ActivityManagerService.java @@ -11429,6 +11429,7 @@ public final class ActivityManagerService extends ActivityManagerNative && userId == UserHandle.USER_SYSTEM && (info.flags & PERSISTENT_MASK) == PERSISTENT_MASK) { r.persistent = true; + r.maxAdj = ProcessList.PERSISTENT_PROC_ADJ; } addProcessNameLocked(r); return r;