diff options
| author | 2019-01-24 14:34:28 +0000 | |
|---|---|---|
| committer | 2019-01-24 14:34:38 +0000 | |
| commit | b416f47e7adc65987075154ffd1b0703cb2ace48 (patch) | |
| tree | d240ab940d521e33b044075c5c0aa4fb04a0c775 | |
| parent | bf4595621748a37d3c0ae2d6297dcad9f24cf77d (diff) | |
Whitelist NFC_UID to open activities from background
Bug: 123331369
Bug: 110956953
Test: atest WmTests:ActivityStarterTests
Test: manual
Change-Id: I517a3b33bcc1dfdc8e8769385a76d2f7912fda9a
| -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, |