音板应用程序上的Mediaplayer错误
|
我有一个音板应用程序,可以在按下音频文件的按钮时调用该文件。但是,在大多数按钮被按下并播放后,我开始出现这些Mediaplayer错误。有谁知道如何检测它,然后完全重新启动或停止它发生?谢谢你的时间。
-科尔比
for (Map.Entry<Integer, Integer> entry : map.entrySet()) {
ImageButton button = (ImageButton) findViewById(entry.getKey());
button.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
try {
int sound = map.get(v.getId());
mp = MediaPlayer.create(myMain.this, sound);
mp.prepare();
} catch (IllegalStateException e) {
} catch (IOException e) {
}
mp.seekTo(0);
mp.start();
}
}
);
}
04-13 10:11:39.873:INFO / MediaPlayer(23152):MediaPlayer start()
04-13 13:11:39.873:VERBOSE / MediaPlayerService(18229):[666] setLooping(0)
04-13 13:11:39.873:VERBOSE / MediaPlayerService(18229):[666] setVolume(1.000000,1.000000)
04-13 10:11:39.873:VERBOSE / AudioSink(18229):setVolume(1.000000,1.000000)
04-13 13:11:39.873:VERBOSE / MediaPlayerService(18229):[666]开始
04-13 13:11:39.873:DEBUG / AwesomePlayer(18229):[U5B]播放(556)
04-13 13:11:39.873:DEBUG / AwesomePlayer(18229):[U5B] play_l(562)
04-13 10:11:39.873:VERBOSE / AudioSink(18229):打开(44100,1,1,4)
04-13 10:11:39.873:错误/ AudioFlinger(18229):没有更多可用的曲目名称
04-13 10:11:39.873:错误/ AudioTrack(18229):AudioFlinger无法创建轨道,状态:12
04-13 10:11:39.873:错误/ AudioSink(18229):无法创建音轨
04-13 10:11:39.873:错误/ MediaPlayer(23152):错误(-19,0)
04-13 10:11:39.894:INFO / MediaPlayer(23152):MediaPlayer handleMessage what = 5
04-13 10:11:39.894:INFO / MediaPlayer(23152):MediaPlayer handleMessage什么= 1
04-13 10:11:39.894:INFO / MediaPlayer(23152):MediaPlayer handleMessage what = 4
04-13 10:11:42.114:INFO / MediaPlayer(23152):MediaPlayer create()
04-13 10:11:42.114:INFO / MediaPlayer(23152):MediaPlayer
04-13 10:11:42.114:VERBOSE / MediaPlayerService(18229):客户端(667)构造函数
没有找到相关结果
已邀请:
2 个回复
爆山
这可能无法编译(我假设您的声音ID来自res / raw文件夹),但是想法是,只有一个MediaPlayer实例,并且每当单击按钮时,都要重置该实例,然后将数据源设置为相应的FileDescriptor,进行准备,然后开始播放。
磐乓铝举