From e5015b5908c1a78147874b40fb0e871c50cfd5ac Mon Sep 17 00:00:00 2001 From: Michael Groover Date: Mon, 31 Oct 2022 13:46:35 -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: Id0561bcf873eb22cce7bd80fa2600740d9fbd40d --- .../core/java/com/android/server/display/BrightnessTracker.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/services/core/java/com/android/server/display/BrightnessTracker.java b/services/core/java/com/android/server/display/BrightnessTracker.java index e9856d0b70775..df4c471938ed8 100644 --- a/services/core/java/com/android/server/display/BrightnessTracker.java +++ b/services/core/java/com/android/server/display/BrightnessTracker.java @@ -1133,7 +1133,7 @@ public class BrightnessTracker { public void registerReceiver(Context context, BroadcastReceiver receiver, IntentFilter filter) { - context.registerReceiver(receiver, filter); + context.registerReceiver(receiver, filter, Context.RECEIVER_EXPORTED_UNAUDITED); } public void unregisterReceiver(Context context,