diff options
Diffstat (limited to 'android/media/session/MediaSessionManager.java')
-rw-r--r-- | android/media/session/MediaSessionManager.java | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/android/media/session/MediaSessionManager.java b/android/media/session/MediaSessionManager.java index 519af1ba..fbc14384 100644 --- a/android/media/session/MediaSessionManager.java +++ b/android/media/session/MediaSessionManager.java @@ -47,6 +47,7 @@ import android.view.KeyEvent; import java.util.ArrayList; import java.util.Collections; import java.util.List; +import java.util.Objects; import java.util.concurrent.Executor; /** @@ -342,12 +343,16 @@ public final class MediaSessionManager { } /** - * Returns whether the app is trusted. + * Checks whether the remote user is a trusted app. * <p> * An app is trusted if the app holds the android.Manifest.permission.MEDIA_CONTENT_CONTROL * permission or has an enabled notification listener. * - * @param userInfo The remote user info + * @param userInfo The remote user info from either + * {@link MediaSession#getCurrentControllerInfo()} or + * {@link MediaBrowserService#getCurrentBrowserInfo()}. + * @return {@code true} if the remote user is trusted and its package name matches with the UID. + * {@code false} otherwise. */ public boolean isTrustedForMediaControl(RemoteUserInfo userInfo) { if (userInfo.getPackageName() == null) { @@ -814,6 +819,11 @@ public final class MediaSessionManager { && mPid == otherUserInfo.mPid && mUid == otherUserInfo.mUid; } + + @Override + public int hashCode() { + return Objects.hash(mPackageName, mPid, mUid); + } } private static final class SessionsChangedWrapper { |