【发布时间】:2021-04-24 14:17:35
【问题描述】:
我需要从手机中所有歌曲的列表中检索评分。 目前我将它们放在文件列表中。一些元数据可以用MediaMetadataRetriever列出,但BlackPlayer EX保存在歌曲中的评分不能,所以我需要用另一种方法提取它们。 我找到了“android.media.Rating”,但没有运气。
到目前为止我的代码:
String musicPath = Environment.getExternalStorageDirectory().toString() + "/Music";
textView.setText(musicPath);
File directory = new File(musicPath);
textView.setText("On it");
MP3FileFilter fileFilter = new MP3FileFilter();
List songsFiles = listFiles(directory, fileFilter, true);
MediaMetadataRetriever mmr = new MediaMetadataRetriever();
for(int i = 0; i<songsFiles.size(); i++){
String song = songsFiles.get(i).toString();
mmr.setDataSource(song);
((Rating) songsFiles.get(i)).getStarRating();
}
textView.setText("Done");
错误显示非常明显,但我找不到解决方法:
java.io.File cannot be cast to android.media.Rating
提前致谢。
【问题讨论】:
标签: android file metadata mp3 rating