From 779f6a10b916048ad8c70a5be5bf2e8cdfdb40fe Mon Sep 17 00:00:00 2001 From: Hui Yu Date: Tue, 15 Jun 2021 10:27:03 -0700 Subject: [PATCH] Need to call resetFgsRestrictionLocked() before calling setFgsRestrictionLocked() again. Bug: 191159915 Test: atest cts/tests/app/src/android/app/cts/ActivityManagerFgsBgStartTest.java#testStartForegroundTimeout Change-Id: Iedd6f4507fc3ac136a0f62385c0f8b49d43ff778 --- services/core/java/com/android/server/am/ActiveServices.java | 1 + 1 file changed, 1 insertion(+) diff --git a/services/core/java/com/android/server/am/ActiveServices.java b/services/core/java/com/android/server/am/ActiveServices.java index 8aea4a948299b..73cf6f57e2821 100644 --- a/services/core/java/com/android/server/am/ActiveServices.java +++ b/services/core/java/com/android/server/am/ActiveServices.java @@ -1790,6 +1790,7 @@ public final class ActiveServices { if (!r.fgRequired) { final long delayMs = SystemClock.elapsedRealtime() - r.createRealTime; if (delayMs > mAm.mConstants.mFgsStartForegroundTimeoutMs) { + resetFgsRestrictionLocked(r); setFgsRestrictionLocked(r.serviceInfo.packageName, r.app.getPid(), r.appInfo.uid, r.intent.getIntent(), r, r.userId,false); final String temp = "startForegroundDelayMs:" + delayMs;