Merge "Pass extras to playFromMediaId" into pi-car-dev am: ee50181163 am: 55f20ab4fd
am: 46a60a3d11

Change-Id: Ib1cbf2191456bea500a00d0e7df8d1a4d7be214a
diff --git a/car-media-common/src/com/android/car/media/common/MediaItemMetadata.java b/car-media-common/src/com/android/car/media/common/MediaItemMetadata.java
index 5ca60d1..00a4416 100644
--- a/car-media-common/src/com/android/car/media/common/MediaItemMetadata.java
+++ b/car-media-common/src/com/android/car/media/common/MediaItemMetadata.java
@@ -236,6 +236,13 @@
     }
 
     /**
+     * @return optional extras that can include extra information about the media item to be played.
+     */
+    public Bundle getExtras() {
+        return mMediaDescription.getExtras();
+    }
+
+    /**
      * @return boolean that indicate if media is explicit.
      */
     public boolean isExplicit() {
diff --git a/car-media-common/src/com/android/car/media/common/playback/PlaybackViewModel.java b/car-media-common/src/com/android/car/media/common/playback/PlaybackViewModel.java
index e085c00..e4ed555 100644
--- a/car-media-common/src/com/android/car/media/common/playback/PlaybackViewModel.java
+++ b/car-media-common/src/com/android/car/media/common/playback/PlaybackViewModel.java
@@ -598,12 +598,12 @@
         }
 
         /**
-         * Starts playing a given media item. This id corresponds to {@link
-         * MediaItemMetadata#getId()}.
+         * Starts playing a given media item.
          */
-        public void playItem(String mediaItemId) {
+        public void playItem(MediaItemMetadata item) {
             if (mMediaController != null) {
-                mMediaController.getTransportControls().playFromMediaId(mediaItemId, null);
+                mMediaController.getTransportControls().playFromMediaId(item.getId(),
+                        item.getExtras());
             }
         }