diff --git a/services/core/java/com/android/server/media/MediaSessionService.java b/services/core/java/com/android/server/media/MediaSessionService.java index d08150cf0a56b..e51ed1b520a9c 100644 --- a/services/core/java/com/android/server/media/MediaSessionService.java +++ b/services/core/java/com/android/server/media/MediaSessionService.java @@ -2046,6 +2046,11 @@ public class MediaSessionService extends SystemService implements Monitor { int controllerUid) { final int uid = Binder.getCallingUid(); final int userId = UserHandle.getUserHandleForUid(uid).getIdentifier(); + if (LocalServices.getService(PackageManagerInternal.class) + .filterAppAccess(controllerPackageName, uid, userId)) { + // The controllerPackageName is not visible to the caller. + return false; + } final long token = Binder.clearCallingIdentity(); try { // Don't perform check between controllerPackageName and controllerUid.