我正在使用MediaPlayer播放.WAV格式的音频文件。当我调试应用程序时,我能够播放文件但是当我运行应用程序文件时没有播放。
关于此问题有similar issue但未提供解决方案。
以下是我正在使用的代码
MediaPlayer mMediaPlayer = new MediaPlayer();
mMediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);
mMediaPlayer.setDataSource(mContext, fileUri);// uri of the audio file
mMediaPlayer.prepare();
mMediaPlayer.setOnCompletionListener(this);
mMediaPlayer.start();// to start the playback of the audio file
此代码仅在调试模式下有效,但在正常模式下无效。
由于
答案 0 :(得分:0)
这就是我所说的:
btn_next.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
mp.setAudioStreamType(AudioManager.STREAM_MUSIC);
try {
mp.reset();
mp.setDataSource(url.toString());
mp.setOnErrorListener(this);
mp.setOnPreparedListener(this);
mp.setOnCompletionListener(this);
} catch (IllegalArgumentException e) {
e.printStackTrace();
} catch (SecurityException e) {
Log.e(TAG, "SecurityException");
} catch (IllegalStateException e) {
Log.e(TAG, "IllegalStateException");
} catch (IOException e) {
Log.e(TAG, "IOException");
}
mp.prepareAsync();
}
});
现在,override
方法onPrepared()
。
@Override
public void onPrepared(MediaPlayer mp) {
// TODO Auto-generated method stub
mp.start();
}
如果你在这方面遇到任何问题,请在下方评论。