gma*_*ter 3 java android android-mediaplayer
我正在写一个程序,我需要从存储中播放一首歌.我为此设置了一个MediaPlayer(下面的代码片段),但不断得到一个java.io.IOException:准备失败:status = 0x1.一些网站表示可能会发生此错误,因为我尝试阅读的文件不是世界可读的.如果是这样,我怎样才能从程序中更改文件权限,解决此问题或其他解决方案.如果没有,请帮我弄清楚这有什么问题.提前致谢.
MediaPlayer player = new MediaPlayer();
player.reset();
player.setDataSource(selectedFilePath);
player.prepare();
player.start();
Run Code Online (Sandbox Code Playgroud)
你在哪里尝试从中读取文件?你可能正在查看/ sdcard/area,而你的应用程序没有read_external_storage的能力
如果是这种情况,请确保将以下行添加到清单中
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
Run Code Online (Sandbox Code Playgroud)
[编辑]我不确定你要从哪里加载,但它可能有助于使用描述符而不是路径.看看这是否有帮助:
FileInputStream fis = new FileInputStream(locationOfFile);
mediaPlayer.setDataSource(fis.getFD());
Run Code Online (Sandbox Code Playgroud)
如果这仍然没有帮助,我建议您尝试使用其他文件名,以确保您的媒体播放器设置正确.或者你可以做类似的事情
File thisFile = new File("/storage/sdcard0/Music/song.mp3");
if (thisFile.exists())
Log.v("file", "Exists");
else
Log.v("file", "Could not be located.");
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
1919 次 |
最近记录: |