From ca7b4a149ae37f3b0e6817dca21910dc222363fc Mon Sep 17 00:00:00 2001 From: Hui Yu Date: Wed, 20 Jan 2021 10:01:20 -0800 Subject: [PATCH] Add param isCheckingForFgsStart to areBackgroundActivityStartsAllowed(). If isCheckingForFgsStart is true, this checking is for FGS start, it won't invoke the mBackgroundActivityStartCallback. Bug: 177642703 Test: atest cts/tests/app/src/android/app/cts/ActivityManagerFgsBgStartTest.java Change-Id: Ie6d58b8886e8477a9dbc524d43ccda930139a460 --- .../com/android/server/am/ActiveServices.java | 2 +- .../server/wm/WindowProcessController.java | 27 ++++++++++++++----- 2 files changed, 22 insertions(+), 7 deletions(-) diff --git a/services/core/java/com/android/server/am/ActiveServices.java b/services/core/java/com/android/server/am/ActiveServices.java index fcb32a1677b19..e476ca908b5da 100644 --- a/services/core/java/com/android/server/am/ActiveServices.java +++ b/services/core/java/com/android/server/am/ActiveServices.java @@ -5373,7 +5373,7 @@ public final class ActiveServices { for (int i = mAm.mProcessList.mLruProcesses.size() - 1; i >= 0; i--) { final ProcessRecord pr = mAm.mProcessList.mLruProcesses.get(i); if (pr.uid == callingUid) { - if (pr.getWindowProcessController().areBackgroundActivityStartsAllowed()) { + if (pr.getWindowProcessController().areBackgroundFgsStartsAllowed()) { ret = FGS_FEATURE_ALLOWED_BY_ACTIVITY_STARTER; break; } diff --git a/services/core/java/com/android/server/wm/WindowProcessController.java b/services/core/java/com/android/server/wm/WindowProcessController.java index 389f428a41389..66b6616ea28ff 100644 --- a/services/core/java/com/android/server/wm/WindowProcessController.java +++ b/services/core/java/com/android/server/wm/WindowProcessController.java @@ -519,13 +519,21 @@ public class WindowProcessController extends ConfigurationContainer allow return true;