4

我的应用正在使用文件夹中的图像/storage/emulated/0/Android/data/com.android.providers.media/albumthumbs。当我更改语言并重新启动手机时,它正在从 Now 中删除图像文件/storage/emulated/0/Android/data/com.android.providers.media/albumthumbs.以在该文件夹中重新创建图像文件,我必须启动本机媒体播放器。

我正在使用 Galacy S4,当我将语言更改为韩语时,经常会出现问题。

有人知道为什么它会在语言更改和重新启动时删除文件,以及我可以在我的应用程序中使用哪些操作来重新创建图像文件,/com.android.providers.media/albumthumb就像它们在本机媒体播放器中使用的一样。

/com.android.providers.media/albumthumbs如果我从如何重新填充它的方式中删除所有图像,则会在启动我的应用程序时显示音乐文件的图像。就像我启动三星音乐播放器的谷歌音乐一样,文件夹中会创建图像。我如何在启动我的应用程序时做到这一点。

4

1 回答 1

1

也许为时已晚,但我的应用程序中遇到了同样的问题。对我有用的解决方法如下

首先,我加载 vie 媒体商店的所有专辑封面。所以我可以获得一些文件路径但没有文件因此开始我检查文件是否存在

File f = new File(coverPath);

if(!f.exists()){

}

如果不是那么我这样做

public void loadAlbumArtById(long id) {
    try {
        Uri songCover = Uri.parse("content://media/external/audio/albumart");
        Uri uriSongCover = ContentUris.withAppendedId(songCover, id);
        ContentResolver res = this.context.getContentResolver();

        InputStream in = res.openInputStream(uriSongCover);
    } catch (Exception ex) {
        // do something
    }
}

其中 Id 是来自媒体商店的专辑 ID (MediaStore.Audio.Albums._ID) 运行此功能后,艺术再次可用,我不知道为什么,但它适用于我

于 2017-09-04T11:44:34.563 回答