From 946790208f699b12da858ae18c23be5cf33568c1 Mon Sep 17 00:00:00 2001 From: Christopher Tate Date: Fri, 8 Jan 2021 11:40:24 -0800 Subject: [PATCH] Allow user add/remove broadcasts to manifest receivers Bring the implemention into line with the documented (intended) behavior. Note that these broadcast already require that the recipient hold a signature|privileged permission. Bug: 177072348 Test: manual (bug test case validation) Change-Id: Ic56892b934017f0d8f75c9c97932d4f6f2bc4166 --- .../core/java/com/android/server/pm/UserManagerService.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/services/core/java/com/android/server/pm/UserManagerService.java b/services/core/java/com/android/server/pm/UserManagerService.java index 9347ce1c6c0fc..e20ed05dc4b4c 100644 --- a/services/core/java/com/android/server/pm/UserManagerService.java +++ b/services/core/java/com/android/server/pm/UserManagerService.java @@ -3646,6 +3646,7 @@ public class UserManagerService extends IUserManager.Stub { //...then external ones Intent addedIntent = new Intent(Intent.ACTION_USER_ADDED); + addedIntent.addFlags(Intent.FLAG_RECEIVER_INCLUDE_BACKGROUND); addedIntent.putExtra(Intent.EXTRA_USER_HANDLE, userInfo.id); // Also, add the UserHandle for mainline modules which can't use the @hide // EXTRA_USER_HANDLE. @@ -4048,6 +4049,7 @@ public class UserManagerService extends IUserManager.Stub { final long ident = Binder.clearCallingIdentity(); try { Intent removedIntent = new Intent(Intent.ACTION_USER_REMOVED); + removedIntent.addFlags(Intent.FLAG_RECEIVER_INCLUDE_BACKGROUND); removedIntent.putExtra(Intent.EXTRA_USER_HANDLE, userId); // Also, add the UserHandle for mainline modules which can't use the @hide // EXTRA_USER_HANDLE.