当我显示一些数字时,我有一个声音片段播放,然后希望它停止。然后我想重复这个过程。
init stuff:
private SoundPool soundPool;
private int soundRoll;
boolean soundloaded = false;
this.setVolumeControlStream(AudioManager.STREAM_MUSIC);
soundPool = new SoundPool(1, AudioManager.STREAM_MUSIC, 0);
soundPool.setOnLoadCompleteListener(new OnLoadCompleteListener() {
@Override
public void onLoadComplete(SoundPool soundPool, int sampleId, int status) {
soundloaded = true;
}
});
soundRoll = soundPool.load(this, R.raw.roll, 1);
线程调用:
public void update() {
.......
new Thread(new Runnable() {
public void run() {
int streamID = 0;
streamID = soundPool.play(soundRoll, volume, volume, 1, -1, 1);
... loop to animate text....
soundPool.stop(streamID);
}
}).start();
}
这一切都很好。 所以它第一次在正确的时间播放和停止。 第二次我什么都没听到 但它第三次工作
如果我取出循环,那么它就可以了。
任何帮助都会被认定
答案 0 :(得分:0)
似乎如果我从MP3切换到OGG文件,则该bug就会消失