我目前正在制作Android电视应用,但无法弄清楚如何更改当我在播放视频时离开应用时出现的现有扑克牌的图标。
这个link显示我需要使用uri格式的字符串设置MediaMetadata.METADATA_KEY_DISPLAY_ICON_URI,但我要么无法正确格式化字符串,要么因其他原因无效。
目前我有这个字符串 -
"android.resource://"+ getPackageName() + "/drawable/app_icon_new"
完全提取
final MediaMetadata.Builder metadataBuilder = new MediaMetadata.Builder();
String title = video.getArtist().replace("_", " -");
metadataBuilder.putString(MediaMetadata.METADATA_KEY_DISPLAY_TITLE, title);
metadataBuilder.putString(MediaMetadata.METADATA_KEY_DISPLAY_SUBTITLE,
video.getTrack());
metadataBuilder.putString(MediaMetadata.METADATA_KEY_TITLE, title);
metadataBuilder.putString(MediaMetadata.METADATA_KEY_ARTIST, video.getArtist());
String uri = "android.resource://"+ getPackageName() + "/drawable/app_icon_new";
metadataBuilder.putString(MediaMetadata.METADATA_KEY_DISPLAY_ICON_URI, uri);
Glide.with(this)
.load(Uri.parse(video.getThumbnailUrl()))
.asBitmap()
.into(new SimpleTarget<Bitmap>(500, 500) {
@Override
public void onResourceReady(Bitmap bitmap, GlideAnimation anim) {
metadataBuilder.putBitmap(MediaMetadata.METADATA_KEY_ART, bitmap);
mSession.setMetadata(metadataBuilder.build());
}
});
非常感谢任何帮助。
答案 0 :(得分:1)
实际上无法更改正在播放的图标,因为您可以在推荐卡中更改它。 我希望他们能够在进一步的更新中解决这个问题。
答案 1 :(得分:1)
我注意到Now Playing Card中使用的图标是你的Manifest中指定的图标,位于应用程序节点的android:icon attribut中。
答案 2 :(得分:0)
我认为就像推荐。 请遵循以下示例: https://github.com/googlesamples/androidtv-Leanback/blob/master/app/src/main/java/com/example/android/tvleanback/recommendation/RecommendationBuilder.java
答案 3 :(得分:0)
目前有效:
metadataBuilder.putString(MediaMetadata.METADATA_KEY_DISPLAY_ICON_URI, String.valueOf(mContext.getResources().getDrawable(R.drawable.your_drawable)));