summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Matt Gilbride <mattgilbride@google.com> 2023-08-21 13:51:37 +0000
committer Android (Google) Code Review <android-gerrit@google.com> 2023-08-21 13:51:37 +0000
commitc66b9b0041206c93bcb49f9955ab642d0a74fd11 (patch)
tree97df62d6395ed4120c3858711630a830447e19a4
parent31a5a41ff09575e26946113d775eab2c38d626ba (diff)
parent5ed626f0929b08f4022882f894b5648503f964d3 (diff)
Merge "Migrate MediaProjectionManager#addCallback to @EnforcePermission" into main
-rw-r--r--media/java/android/media/projection/IMediaProjectionManager.aidl1
-rw-r--r--services/core/java/com/android/server/media/projection/MediaProjectionManagerService.java7
2 files changed, 3 insertions, 5 deletions
diff --git a/media/java/android/media/projection/IMediaProjectionManager.aidl b/media/java/android/media/projection/IMediaProjectionManager.aidl
index 304eecb9701a..d294601b44cc 100644
--- a/media/java/android/media/projection/IMediaProjectionManager.aidl
+++ b/media/java/android/media/projection/IMediaProjectionManager.aidl
@@ -108,6 +108,7 @@ interface IMediaProjectionManager {
+ ".permission.MANAGE_MEDIA_PROJECTION)")
void notifyActiveProjectionCapturedContentVisibilityChanged(boolean isVisible);
+ @EnforcePermission("MANAGE_MEDIA_PROJECTION")
@JavaPassthrough(annotation = "@android.annotation.RequiresPermission(android.Manifest"
+ ".permission.MANAGE_MEDIA_PROJECTION)")
void addCallback(IMediaProjectionWatcherCallback callback);
diff --git a/services/core/java/com/android/server/media/projection/MediaProjectionManagerService.java b/services/core/java/com/android/server/media/projection/MediaProjectionManagerService.java
index e7bd68efd597..515c7fb09ab0 100644
--- a/services/core/java/com/android/server/media/projection/MediaProjectionManagerService.java
+++ b/services/core/java/com/android/server/media/projection/MediaProjectionManagerService.java
@@ -735,12 +735,9 @@ public final class MediaProjectionManagerService extends SystemService
}
@Override //Binder call
+ @EnforcePermission(MANAGE_MEDIA_PROJECTION)
public void addCallback(final IMediaProjectionWatcherCallback callback) {
- if (mContext.checkCallingPermission(MANAGE_MEDIA_PROJECTION)
- != PackageManager.PERMISSION_GRANTED) {
- throw new SecurityException("Requires MANAGE_MEDIA_PROJECTION in order to add "
- + "projection callbacks");
- }
+ addCallback_enforcePermission();
final long token = Binder.clearCallingIdentity();
try {
MediaProjectionManagerService.this.addCallback(callback);