我是Android-Development的新手。我无法访问存储在“音乐”文件夹中的歌曲。从adb shell开始,路径为:/ storage / emulated / legacy / Music。 以下代码导致异常:
try {
Log.i("path", Environment.getExternalStorageDirectory().getAbsolutePath()+"/"+Environment.DIRECTORY_MUSIC + "/" + name + ".mp3");
mediaPlayer.setDataSource(getApplicationContext(),
Uri.parse(Environment.getExternalStorageDirectory().getAbsolutePath()
+ "/"
+ Environment.DIRECTORY_MUSIC
+ "/"
+ name + ".mp3"));
mediaPlayer.prepare();
mediaPlayer.start();
}
以下是例外:
I/path: /storage/emulated/0/Music/A Wunder.mp3
java.io.IOException: setDataSource failed.
任何帮助表示赞赏!
编辑: 看来我的一些文件有问题。我的“玩家”无法打开所有这些,但其他玩家可以。 所以这里的代码对我有用:
mediaPlayer.setDataSource(getApplicationContext(),
Uri.parse(Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_MUSIC) + "/" + name + ".mp3"));