Android MediaMetadataRetriever会导致大部分空值

Android MediaMetadataRetriever会导致大部分空值,android,Android,我正在尝试从一些音乐文件中获取mp3标签 MediaMetadataRetriever mmr = new MediaMetadataRetriever(); File filenm = new File(path, availableFiles[0]); mmr.setDataSource(showFileActivity.this,Uri.fromFile(filenm)); String column = mmr.extractMetadata(MediaMetadataRetrieve

我正在尝试从一些音乐文件中获取mp3标签

MediaMetadataRetriever mmr = new MediaMetadataRetriever();

File filenm = new File(path, availableFiles[0]);
mmr.setDataSource(showFileActivity.this,Uri.fromFile(filenm));
String column = mmr.extractMetadata(MediaMetadataRetriever.METADATA_KEY_TITLE):
我可以得到正确的持续时间和比特率标记,因此我知道我在正确的文件上设置了数据源,但其他所有内容都返回空值。其他标签(如Album)也存在,因为我可以从设备中提取文件并验证它们是否存在


有没有更好的方式获得mp3标签?我做错了吗?

如果文件存储在设备上(根据您的示例,情况似乎是这样),您可以尝试直接查询Android的MediaStore来检索元数据。你试过了吗?没有,走了另一条路,使用了第三方库——myID3