diff options
author | Michael Groover <mpgroover@google.com> | 2021-12-07 18:01:36 -0800 |
---|---|---|
committer | Michael Groover <mpgroover@google.com> | 2021-12-07 18:01:36 -0800 |
commit | 3dd098319c336abd54d333597bfac22d5086e751 (patch) | |
tree | 97f5fa795cb82fa89de19d08e2cd771a832ff981 | |
parent | 2394993421203bbad7e1d5d1c19cffcd71b22cfa (diff) | |
download | LegacyCamera-3dd098319c336abd54d333597bfac22d5086e751.tar.gz |
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 T 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 T release.
Bug: 161145287
Test: Build
Change-Id: Ie460232456b691fbbb273eda8d7c4d6da7d98384
-rw-r--r-- | src/com/android/camera/Camera.java | 3 | ||||
-rwxr-xr-x | src/com/android/camera/VideoCamera.java | 3 |
2 files changed, 4 insertions, 2 deletions
diff --git a/src/com/android/camera/Camera.java b/src/com/android/camera/Camera.java index 322ab0d0..dc96854f 100644 --- a/src/com/android/camera/Camera.java +++ b/src/com/android/camera/Camera.java @@ -1537,7 +1537,8 @@ public class Camera extends ActivityBase implements FocusManager.Listener, intentFilter.addAction(Intent.ACTION_MEDIA_SCANNER_FINISHED); intentFilter.addAction(Intent.ACTION_MEDIA_CHECKING); intentFilter.addDataScheme("file"); - registerReceiver(mReceiver, intentFilter); + registerReceiver(mReceiver, intentFilter, + Context.RECEIVER_EXPORTED_UNAUDITED); mDidRegister = true; } diff --git a/src/com/android/camera/VideoCamera.java b/src/com/android/camera/VideoCamera.java index b2626ed2..fe98acd0 100755 --- a/src/com/android/camera/VideoCamera.java +++ b/src/com/android/camera/VideoCamera.java @@ -864,7 +864,8 @@ public class VideoCamera extends ActivityBase intentFilter.addAction(Intent.ACTION_MEDIA_SCANNER_FINISHED); intentFilter.addDataScheme("file"); mReceiver = new MyBroadcastReceiver(); - registerReceiver(mReceiver, intentFilter); + registerReceiver(mReceiver, intentFilter, + Context.RECEIVER_EXPORTED_UNAUDITED); mStorageSpace = Storage.getAvailableSpace(); mHandler.postDelayed(new Runnable() { |