android MediaDescription.Builder()未设置媒体项图标

yk9xbfzb  于 2022-12-31  发布在  Android
关注(0)|答案(1)|浏览(104)

这是一个使用MediaBrowserService的Android汽车媒体应用程序,我正试图使用可绘制文件夹中的图像设置MediaItem MediaDescription图标。
这是我用的密码

@Override
public void onLoadChildren(final String parentMediaId, final Result<List<MediaBrowser.MediaItem>> result) {
    // Return the children of the given parent media item
    List<MediaBrowser.MediaItem> children = getChildren(parentMediaId);
    result.sendResult(children);
}

private List<MediaBrowser.MediaItem> getChildren(String parentId) {
    int drawableResourceId = R.drawable.finallogo;
    Uri drawableUri = Uri.parse(ContentResolver.SCHEME_ANDROID_RESOURCE + "://"
            + "com.examole.app" + "/" + drawableResourceId);
    List<MediaBrowser.MediaItem> children = new ArrayList<>();
    if (parentId.equals("root")) {

        children.add(new MediaBrowser.MediaItem(new MediaDescription.Builder()

                .setMediaId("media_item_1")
                .setTitle("Browsable Item")
                .setSubtitle("test")
                .setIconUri(drawableUri)
                .build(),MediaBrowser.MediaItem.FLAG_BROWSABLE ));
    }else{
        children.add(new MediaBrowser.MediaItem(new MediaDescription.Builder()
            .setMediaId("media_item_1")
            .setTitle("Playable Item")
            .setSubtitle("test2")
                .setIconUri(drawableUri)
            .build(), MediaBrowser.MediaItem.FLAG_PLAYABLE));
    }
    return children;
}

文件上说,
必须使用ContentResolver.SCHEME_CONTENT或ContentResolver.SCHEME_ANDROID_RESOURCE将媒体项的图稿作为本地URI传递。此本地URI必须解析为可在应用程序资源中绘制的位图或矢量。对于MediaDescriptionCompat
并且此代码已经使用了ContentResolver,

Uri drawableUri = Uri.parse(ContentResolver.SCHEME_ANDROID_RESOURCE + "://"
            + "com.examole.app" + "/" + drawableResourceId);

图像是否需要在从本地可绘制文件夹加载之前缓存?或者有人可以指定一种方法来设置本地可绘制图像到媒体项目与onLoadChidren方法。谢谢。

acruukt9

acruukt91#

如果是来自drawable的文件,则使用此代码。

metadata.putString(MediaMetadata.METADATA_KEY_ALBUM_ART_URI, "android.resource://com.example.app/drawable/image");

相关问题