我正在为Android编写音乐播放器,并试图获取歌曲的持续时间(没有FileDiscriptor->仅包含File的路径),以显示它们的排序。但是尝试时会出现此异常:
java.lang.RuntimeException:setDataSource失败:status = 0x80000000
int column_index = songCursor.getColumnIndexOrThrow(MediaStore.Images.Media.DATA);
String songPath = songCursor.getString(column_index);
Uri u = Uri.parse(songPath);
MediaMetadataRetriever mmr = new MediaMetadataRetriever();
mmr.setDataSource(getActivity().getApplicationContext() ,u);
String durationStr = mmr.extractMetadata(MediaMetadataRetriever.METADATA_KEY_DURATION);
int millSecond = Integer.parseInt(durationStr);
long dur = Long.parseLong("" + millSecond);