diff options
| -rw-r--r-- | services/core/java/com/android/server/wm/ActivityStarter.java | 3 | ||||
| -rw-r--r-- | services/tests/wmtests/src/com/android/server/wm/ActivityStarterTests.java | 4 |
2 files changed, 6 insertions, 1 deletions
diff --git a/services/core/java/com/android/server/wm/ActivityStarter.java b/services/core/java/com/android/server/wm/ActivityStarter.java index d36e545aa74f..1f6c17d45922 100644 --- a/services/core/java/com/android/server/wm/ActivityStarter.java +++ b/services/core/java/com/android/server/wm/ActivityStarter.java @@ -907,7 +907,8 @@ class ActivityStarter { return false; } // don't abort for the most important UIDs - if (callingUid == Process.ROOT_UID || callingUid == Process.SYSTEM_UID) { + if (callingUid == Process.ROOT_UID || callingUid == Process.SYSTEM_UID + || callingUid == Process.NFC_UID) { return false; } // don't abort if the callerApp has any visible activity diff --git a/services/tests/wmtests/src/com/android/server/wm/ActivityStarterTests.java b/services/tests/wmtests/src/com/android/server/wm/ActivityStarterTests.java index a381023590c3..5a145ad60db7 100644 --- a/services/tests/wmtests/src/com/android/server/wm/ActivityStarterTests.java +++ b/services/tests/wmtests/src/com/android/server/wm/ActivityStarterTests.java @@ -599,6 +599,10 @@ public class ActivityStarterTests extends ActivityTestsBase { Process.SYSTEM_UID, false, PROCESS_STATE_TOP + 1, UNIMPORTANT_UID2, false, PROCESS_STATE_TOP + 1, false, false, false); + runAndVerifyBackgroundActivityStartsSubtest("disallowed_nfcUid_notAborted", false, + Process.NFC_UID, false, PROCESS_STATE_TOP + 1, + UNIMPORTANT_UID2, false, PROCESS_STATE_TOP + 1, + false, false, false); runAndVerifyBackgroundActivityStartsSubtest( "disallowed_callingUidHasVisibleWindow_notAborted", false, UNIMPORTANT_UID, true, PROCESS_STATE_TOP + 1, |