Java MediaPlayer可以';不要在Android中播放音频
今天,我制作了一个应用程序,在Android中播放音乐 使用Java MediaPlayer可以';不要在Android中播放音频,java,android,audio,android-mediaplayer,Java,Android,Audio,Android Mediaplayer,今天,我制作了一个应用程序,在Android中播放音乐 使用MediaPlayer播放音频文件时失败;它不能播放任何文件音频。 此异常会引发日志cat,如: E/MediaPlayer:错误(1,-2147483648) W/System.err:java.io.IOException:Prepare失败:状态=0x1 W/System.err:at-android.media.MediaPlayer.prepare(本机方法) 此代码显示更多信息;第行出现异常: mediaPlayer.pre
MediaPlayer
播放音频文件时失败;它不能播放任何文件音频。
此异常会引发日志cat,如:
E/MediaPlayer:错误(1,-2147483648)
W/System.err:java.io.IOException:Prepare失败:状态=0x1
W/System.err:at-android.media.MediaPlayer.prepare(本机方法)
此代码显示更多信息;第行出现异常:
mediaPlayer.prepare()代码>
此类包含以下行:
public void playAudio() {
Intent intent = getIntent();
fileName = (TextView) findViewById(R.id.file);
playBtn = (ImageButton) findViewById(R.id.play);
String chooseFiles = intent.getStringExtra("fileName");
try {
mediaPlayer = new android.media.MediaPlayer();
mediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);
mediaPlayer.setDataSource(chooseFiles);
mediaPlayer.prepare();
}
catch (IOException e) {
e.printStackTrace();
}
fileName.setText(fName.substring(chooseFiles.lastIndexOf("/") + 1));
mediaPlayer.start();
timeElapsed = mediaPlayer.getCurrentPosition();
}
我在AndroidManifest.xml
中添加了权限:
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
如何解决这个问题?非常感谢。MediaPlayer
无法访问您的文件,或者因为它找不到,在这种情况下,您应该尝试将“文件:/”
附加到您的路径
file:///storage/sdcard0/audio/2016-03-24 15.02.58.mp4
或者,如果是权限问题(很可能是因为出现了此错误(1,-2147483648)
),请传递如下文件描述符
File file = new File(chooseFiles);
FileInputStream inputStream = new FileInputStream(file);
mediaPlayer.setDataSource(inputStream.getFD());
inputStream.close();
字符串chooseFiles
的外观如何?chooseFiles:“/storage/sdcard0/audio/2016-03-24 15.02.58.mp4
是播放音频的路径文件。@RaduIonescu