diff options
| -rw-r--r-- | services/core/java/com/android/server/wm/BackgroundActivityStartController.java | 4 | 
1 files changed, 3 insertions, 1 deletions
diff --git a/services/core/java/com/android/server/wm/BackgroundActivityStartController.java b/services/core/java/com/android/server/wm/BackgroundActivityStartController.java index b65b2b2ae959..2d6f03a6c9ad 100644 --- a/services/core/java/com/android/server/wm/BackgroundActivityStartController.java +++ b/services/core/java/com/android/server/wm/BackgroundActivityStartController.java @@ -913,8 +913,10 @@ public class BackgroundActivityStartController {          // Normal apps with visible app window will be allowed to start activity if app switching          // is allowed, or apps like live wallpaper with non app visible window will be allowed. +        // The home app can start apps even if app switches are usually disallowed.          final boolean appSwitchAllowedOrFg = state.mAppSwitchState == APP_SWITCH_ALLOW -                || state.mAppSwitchState == APP_SWITCH_FG_ONLY; +                || state.mAppSwitchState == APP_SWITCH_FG_ONLY +                || isHomeApp(state.mRealCallingUid, state.mRealCallingPackage);          if (balImproveRealCallerVisibilityCheck()) {              if (appSwitchAllowedOrFg && state.mRealCallingUidHasAnyVisibleWindow) {                  return new BalVerdict(BAL_ALLOW_VISIBLE_WINDOW,  |