我正在构建一个通过Chromecast将音乐投放到屏幕上的应用。新版V3 SDK向CastDialog
引入了控件,为了遵循Google的指导原则,我应该将标题和艺术家名称设置为对话框。
显然我做错了什么,但是在运行以下代码时我无法正常工作:
MediaMetadata mediaMetadata = new MediaMetadata(MediaMetadata.MEDIA_TYPE_MUSIC_TRACK);
mediaMetadata.putString(MediaMetadata.KEY_TITLE, "Track title");
mediaMetadata.putString(MediaMetadata.KEY_ARTIST, "Artist");
...
new MediaInfo.Builder(...)
.setContentType("audio/mp3")
.setStreamType(MediaInfo.STREAM_TYPE_BUFFERED)
.setMetadata(mediaMetadata)
.build();
奇怪的是,当我将MediaMetadata
类型更改为MEDIA_TYPE_MOVIE
并将MediaMetadata.KEY_ARTIST
键更改为MediaMetadata.KEY_SUBTITLE
(其中大多数样本都使用)时,它确实有效,但我恐怕使用它作为黑客攻击可能会在将来引发潜在的问题。
在这种情况下我做错了什么?是否有任何理由未在CastDialog
中正确设置艺术家姓名?