And*_*cki 6 java android exception android-mediaplayer
我已经写了一段时间的mp3播放器,但是由于某种原因,出现了以下异常:
W / MediaPlayer:无法打开/ storage / emulated / 0 / Music /通用音乐file.mp3:java.io.FileNotFoundException:没有内容提供者:/ storage / emulated / 0 / Music / generic音乐file.mp3
每当我尝试播放任何歌曲时,都会不断弹出。
我检索歌曲路径的方式是:
file.getAbsolutePath()
Run Code Online (Sandbox Code Playgroud)
其中file是一个File实例。我播放歌曲的方式是:
try {
mediaPlayer = MediaPlayer.create(this, Uri.parse(currentTrack.getPath()));
mediaPlayer.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
@Override
public void onCompletion(MediaPlayer mediaPlayer) {
nextTrack();
}
});
} catch (Exception ex) {
ex.printStackTrace();
}
Run Code Online (Sandbox Code Playgroud)
其中这是一类,它扩展的实例的引用服务。
有任何想法吗?
大概currentTrack有一个File对象。如果是这样,请替换Uri.parse(currentTrack.getPath())为currentTrack.getUri(),您在其中实现返回getUri()的值。Uri.fromFile()File
这解决了您眼前的问题,即您创建了一个 invalid Uri,因为它没有方案。它还让您能够处理将来可能需要的Uri非文件类型(例如,值)。content Uri
| 归档时间: |
|
| 查看次数: |
13105 次 |
| 最近记录: |