From aa86d12923af71539e1418e6ce475c3339031fd1 Mon Sep 17 00:00:00 2001 From: Michael Groover Date: Mon, 31 Oct 2022 13:48:26 -0500 Subject: [PATCH] Add unaudited exported flag to exposed runtime receivers Android T allows apps to declare a runtime receiver as not exported by invoking registerReceiver with a new RECEIVER_NOT_EXPORTED flag; receivers registered with this flag will only receive broadcasts from the platform and the app itself. However to ensure developers can properly protect their receivers, all apps targeting U or later registering a receiver for non-system broadcasts must specify either the exported or not exported flag when invoking #registerReceiver; if one of these flags is not provided, the platform will throw a SecurityException. This commit updates all the exposed receivers with a new RECEIVER_EXPORTED_UNAUDITED flag to maintain the existing behavior of exporting the receiver while also flagging the receiver for audit before the U release. Bug: 234659204 Test: Build Change-Id: I0dd2c65d7e1c4c0e27a67e55b5b134ee2afad5b7 --- .../src/com/android/bandwidthtest/util/ConnectionUtil.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/core/tests/bandwidthtests/src/com/android/bandwidthtest/util/ConnectionUtil.java b/core/tests/bandwidthtests/src/com/android/bandwidthtest/util/ConnectionUtil.java index 1a636604ed577..191756ab1da7c 100644 --- a/core/tests/bandwidthtests/src/com/android/bandwidthtest/util/ConnectionUtil.java +++ b/core/tests/bandwidthtests/src/com/android/bandwidthtest/util/ConnectionUtil.java @@ -99,7 +99,8 @@ public class ConnectionUtil { // Register a download receiver for ACTION_DOWNLOAD_COMPLETE mDownloadReceiver = new DownloadReceiver(); mContext.registerReceiver(mDownloadReceiver, - new IntentFilter(DownloadManager.ACTION_DOWNLOAD_COMPLETE)); + new IntentFilter(DownloadManager.ACTION_DOWNLOAD_COMPLETE), + Context.RECEIVER_EXPORTED_UNAUDITED); // Register a wifi receiver mWifiReceiver = new WifiReceiver();