我正在创建一个简单的音板,以便在用户单击按钮时播放声音。问题是,如果按钮按得足够多(通常大约 10 次),它最终会停止播放并显示错误E/MediaPlayer: error (1, -19)
我究竟做错了什么?我的播放声音的代码:
private void playSound(int soundID){
final MediaPlayer mp = MediaPlayer.create(this,soundID);
mp.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
@Override
public void onPrepared(MediaPlayer mediaPlayer) {
mp.start();
}
});
}
你应该使用 Soundpool。它是专门为播放短音效而创建的。而且使用起来比MediaPlayer简单很多。 MediaPlayer 只能用于播放常规/大型音乐。
参见这里的例子:http://www.vogella.com/tutorials/AndroidMedia/article.html#tutorial-play-sounds-via-soundpool
注意:不需要像示例中那样使用 onTouch,为了简单起见,您可以只使用 onClick。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)