diff options
| author | 2017-07-21 13:29:57 -0700 | |
|---|---|---|
| committer | 2017-08-22 01:14:47 +0000 | |
| commit | 2a9eef7a3be53cb8da1e6e4f394062d0301474a3 (patch) | |
| tree | 085316f2857ec8895a5226eb5b3fc016682eff6e | |
| parent | 230c78cec5086e53e378bfc3a8e3bb6168dc0a1f (diff) | |
Improve AVRCP quality and state handling (2/2)
Bug: 64749777
Test: Play music with various car kits and see that metadata shows up
See go/oc-avrcp-sotu - 8/15/20 OC + Patches for further info
Change-Id: I58c9dd0bf976485a2efefd042cd667ee433e07e1
| -rw-r--r-- | media/java/android/media/MediaDescription.java | 27 | ||||
| -rw-r--r-- | media/java/android/media/session/MediaSession.java | 23 |
2 files changed, 50 insertions, 0 deletions
diff --git a/media/java/android/media/MediaDescription.java b/media/java/android/media/MediaDescription.java index 14485d3c43a3..e6aea99ef50b 100644 --- a/media/java/android/media/MediaDescription.java +++ b/media/java/android/media/MediaDescription.java @@ -220,6 +220,33 @@ public class MediaDescription implements Parcelable { } @Override + public boolean equals(Object o) { + if (o == null) { + return false; + } + + if (!(o instanceof MediaDescription)){ + return false; + } + + final MediaDescription d = (MediaDescription) o; + + if (!String.valueOf(mTitle).equals(String.valueOf(d.mTitle))) { + return false; + } + + if (!String.valueOf(mSubtitle).equals(String.valueOf(d.mSubtitle))) { + return false; + } + + if (!String.valueOf(mDescription).equals(String.valueOf(d.mDescription))) { + return false; + } + + return true; + } + + @Override public String toString() { return mTitle + ", " + mSubtitle + ", " + mDescription; } diff --git a/media/java/android/media/session/MediaSession.java b/media/java/android/media/session/MediaSession.java index dfd2bb35d6ea..9536d3d35206 100644 --- a/media/java/android/media/session/MediaSession.java +++ b/media/java/android/media/session/MediaSession.java @@ -48,6 +48,7 @@ import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.lang.ref.WeakReference; import java.util.List; +import java.util.Objects; /** * Allows interaction with media controllers, volume keys, media buttons, and @@ -1256,6 +1257,28 @@ public final class MediaSession { "Description=" + mDescription + ", Id=" + mId + " }"; } + + @Override + public boolean equals(Object o) { + if (o == null) { + return false; + } + + if (!(o instanceof QueueItem)) { + return false; + } + + final QueueItem item = (QueueItem) o; + if (mId != item.mId) { + return false; + } + + if (!Objects.equals(mDescription, item.mDescription)) { + return false; + } + + return true; + } } private static final class Command { |