在使用Android MediaPlayer播放铃声时,如果要用同一个MediaPlayer对象播放多个铃声时,需要在setDataSource前先调用一下reset,不然会触发异常:
try {
smMediaPlayer.reset();
mMediaPlayer.setDataSource(context, uri);
mMediaPlayer.setLooping(false); //循环播放
mMediaPlayer.prepare();
mMediaPlayer.start();
} catch (IOException e) {
e.printStackTrace();
}
复制代码