Android 色度学元数据
在Chromecast上使用自定义接收器的音乐应用程序中,尝试获取所需的元数据、锁屏和播放弹出行为都很有趣。这是我要做的Android 色度学元数据,android,chromecast,google-cast-sdk,Android,Chromecast,Google Cast Sdk,在Chromecast上使用自定义接收器的音乐应用程序中,尝试获取所需的元数据、锁屏和播放弹出行为都很有趣。这是我要做的 private void _dummyRemotePlay(long id,String mUrl,String artist,String title,String iUrl) { // CODE THAT CHANGES BEHAVIOUR MediaTrack.Builder b = new MediaTrack.Builder(id,MediaTra
private void _dummyRemotePlay(long id,String mUrl,String artist,String title,String iUrl) {
// CODE THAT CHANGES BEHAVIOUR
MediaTrack.Builder b = new MediaTrack.Builder(id,MediaTrack.TYPE_AUDIO);
b.setSubtype(MediaTrack.SUBTYPE_METADATA);
// END CODE THAT CHANGES BEHAVIOUR
MediaMetadata mdata = new MediaMetadata(MediaMetadata.MEDIA_TYPE_MUSIC_TRACK);
mdata.putString(MediaMetadata.KEY_ARTIST, artist);
mdata.putString(MediaMetadata.KEY_TITLE, title);
mdata.addImage(new WebImage(Uri.parse(iUrl)));
MediaInfo mi = new MediaInfo.Builder(mUrl)
.setStreamType(MediaInfo.STREAM_TYPE_BUFFERED)
.setContentType("audio/mpeg")
.setMetadata(mdata)
.build();
MediaQueueItem qi = new
MediaQueueItem.Builder(mi).setAutoplay(true).setPreloadTime(20).build();
MediaQueueItem[] qa = new MediaQueueItem[]{qi,qi}; // Two so SKIP_NEXT works...
_remoteMediaClient.queueLoad(qa,0,MediaStatus.REPEAT_MODE_REPEAT_OFF, null);}
如果不调用b.setSubType(MediaTrack.SUBTYPE\u METADATA)
强制转换弹出窗口(图像、控件等)将显示强制转换通知,并通过音量键调整强制转换音量。不起作用的是锁屏元数据和控件。艺术家未知,控件不起任何作用
使用b.setSubType
调用锁屏工作正常(艺术家正确显示,控制工作)。但是,没有播放通知,并且播放弹出窗口没有选择媒体(没有图像,没有控件,只有音量滑块和结束播放)。此外,音量键未绑定到强制转换音量
到了这一点,我只是随便玩玩。最初称为b.build()
以创建MediaTrack
,将其添加到列表中,并在MediaInfo.builder
上称为.setMediaTracks(list)
。不过,我还是把它浓缩到了上面。仅对未构建MediaTrack的构建器调用b.setSubType
就足以切换行为
我要找的是正确的锁屏行为,正确的演员对话图像和控制,音量键工作。我对cast通知漠不关心,因为应用程序无论如何都有一个cast通知。似乎我无法实现所有这些。您是否尝试过将此作为解决方案?谢谢,但这里的工作不仅仅是控制演员数量。一般来说,我真的不想开始与框架抗争。我只是想知道如何正确使用它,并实现正确的演员阵容和锁屏功能。