diff options
author | Linux Build Service Account <lnxbuild@localhost> | 2014-11-27 18:28:21 -0800 |
---|---|---|
committer | Gerrit - the friendly Code Review server <code-review@localhost> | 2014-11-27 18:28:21 -0800 |
commit | 60f4fe820f6ecad099979dbead6c182176921515 (patch) | |
tree | 02357f562863524168461db28ffc858f9d6ced80 | |
parent | c15e99458099da3d1f1e12ce48f2c6f2e65767ca (diff) | |
parent | 0032f5ac4bc13baa9ada6c7635f3fe4d5b1fc114 (diff) | |
download | android_packages_apps_Bluetooth-60f4fe820f6ecad099979dbead6c182176921515.tar.gz android_packages_apps_Bluetooth-60f4fe820f6ecad099979dbead6c182176921515.tar.bz2 android_packages_apps_Bluetooth-60f4fe820f6ecad099979dbead6c182176921515.zip |
Merge "Proper retrieval and storing of metadata"
-rw-r--r-- | src/com/android/bluetooth/avrcp/Avrcp.java | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/src/com/android/bluetooth/avrcp/Avrcp.java b/src/com/android/bluetooth/avrcp/Avrcp.java index dfa24d2f0..dab76174c 100644 --- a/src/com/android/bluetooth/avrcp/Avrcp.java +++ b/src/com/android/bluetooth/avrcp/Avrcp.java @@ -1431,11 +1431,16 @@ public final class Avrcp { final MediaPlayerInfo di = rccIterator.next(); if (di.GetPlayerFocus()) { if (DEBUG) Log.v(TAG, "resetting current MetaData"); - mMetadata = di.GetMetadata(); + mMetadata.artist = di.GetMetadata().artist; + mMetadata.trackTitle = di.GetMetadata().trackTitle; + mMetadata.albumTitle = di.GetMetadata().albumTitle; + mMetadata.genre = di.GetMetadata().genre; + mMetadata.tracknum = di.GetMetadata().tracknum; break; } } } + String oldMetadata = mMetadata.toString(); mMetadata.artist = data.getString(MediaMetadataRetriever.METADATA_KEY_ARTIST, null); mMetadata.trackTitle = data.getString(MediaMetadataRetriever.METADATA_KEY_TITLE, null); @@ -1444,7 +1449,8 @@ public final class Avrcp { mTrackNumber = data.getLong(MediaMetadataRetriever.METADATA_KEY_NUM_TRACKS, -1L); mMetadata.tracknum = data.getLong(MediaMetadataRetriever.METADATA_KEY_CD_TRACK_NUMBER, -1L); - Log.v(TAG,"mMetadata.toString() = " + mMetadata.toString()); + Log.v(TAG,"old Metadata = " + oldMetadata); + Log.v(TAG,"new MetaData " + mMetadata.toString()); if (mMediaPlayers.size() > 0) { final Iterator<MediaPlayerInfo> rccIterator = mMediaPlayers.iterator(); @@ -1457,6 +1463,7 @@ public final class Avrcp { } } } + if (!oldMetadata.equals(mMetadata.toString())) { updateTrackNumber(); Log.v(TAG,"new mMetadata, mTrackNumber update to " + mTrackNumber); @@ -3969,6 +3976,8 @@ private void updateLocalPlayerSettings( byte[] data) { mMetadata.albumTitle = metaData.albumTitle; mMetadata.artist = metaData.artist; mMetadata.trackTitle = metaData.trackTitle; + mMetadata.genre = metaData.genre; + mMetadata.tracknum = metaData.tracknum; } public byte GetPlayState() { return mPlayState; |