From d5c42a3061312bd826bb0efcdd4b46b030c29ad7 Mon Sep 17 00:00:00 2001 From: Ricky Wai Date: Tue, 31 May 2022 14:53:43 +0000 Subject: [PATCH] Let virtualdevice.launchPendingIntent() to start BAL using its BAL permission As it's going to display activities on a display, we should allow it to use its BAL permission to start those pending intent. Bug: 232921553 Test: atest CreateVirtualDisplayTest Change-Id: Ib7bcb8314f818f72432b44c88bffd5fccb79c649 --- .../server/companion/virtual/VirtualDeviceImpl.java | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/services/companion/java/com/android/server/companion/virtual/VirtualDeviceImpl.java b/services/companion/java/com/android/server/companion/virtual/VirtualDeviceImpl.java index 3b3bf11f2d9ee..5f337ab9bae30 100644 --- a/services/companion/java/com/android/server/companion/virtual/VirtualDeviceImpl.java +++ b/services/companion/java/com/android/server/companion/virtual/VirtualDeviceImpl.java @@ -241,6 +241,9 @@ final class VirtualDeviceImpl extends IVirtualDevice.Stub private void sendPendingIntent(int displayId, PendingIntent pendingIntent) throws PendingIntent.CanceledException { + final ActivityOptions options = ActivityOptions.makeBasic().setLaunchDisplayId(displayId); + options.setPendingIntentBackgroundActivityLaunchAllowed(true); + options.setPendingIntentBackgroundActivityLaunchAllowedByPermission(true); pendingIntent.send( mContext, /* code= */ 0, @@ -248,9 +251,7 @@ final class VirtualDeviceImpl extends IVirtualDevice.Stub /* onFinished= */ null, /* handler= */ null, /* requiredPermission= */ null, - ActivityOptions.makeBasic() - .setLaunchDisplayId(displayId) - .toBundle()); + options.toBundle()); } @Override // Binder call