From cad330ef3e053b775e22bfa1998bd094b83fbb20 Mon Sep 17 00:00:00 2001 From: Jing Ji Date: Fri, 15 Jul 2022 16:54:15 -0700 Subject: [PATCH] Set the FLAG_FROM_BACKGROUND for job bindings So it won't reset the process error state (crash times). Bug: 239042601 Test: Manual - crash an app, wait for its job restart Change-Id: Ia4f1d5d69d9ac22f52069af7ee333dd6c0849d77 --- .../java/com/android/server/job/JobServiceContext.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/apex/jobscheduler/service/java/com/android/server/job/JobServiceContext.java b/apex/jobscheduler/service/java/com/android/server/job/JobServiceContext.java index 68801bcac4ba4..dd80acb80de2d 100644 --- a/apex/jobscheduler/service/java/com/android/server/job/JobServiceContext.java +++ b/apex/jobscheduler/service/java/com/android/server/job/JobServiceContext.java @@ -303,7 +303,9 @@ public final class JobServiceContext implements ServiceConnection { getStartActionId(job), String.valueOf(job.getJobId())); mVerb = VERB_BINDING; scheduleOpTimeOutLocked(); - final Intent intent = new Intent().setComponent(job.getServiceComponent()); + // Use FLAG_FROM_BACKGROUND to avoid resetting the bad-app tracking. + final Intent intent = new Intent().setComponent(job.getServiceComponent()) + .setFlags(Intent.FLAG_FROM_BACKGROUND); boolean binding = false; try { final int bindFlags;