2012-05-26 39 views
0

我遇到問題了。當我嘗試使用Soundpool播放聲音時,每次播放之間都會有小的停頓。 例如,當按下按鈕時,我想要播放2秒鐘的聲音。 我試着用相同的聲音開始2個線程。第二次在第一次0.5秒後開始。但沒有幫助。 在Android中永不停頓地玩遊戲

AudioManager mAudioManager; 
    SoundPool mSoundPool; 
    Runnable thr1; 
    Runnable thr2; 

    public void playLoopedSound(int soundId) { 
     mSoundPool = new SoundPool(2, AudioManager.STREAM_MUSIC, 0); 
     mAudioManager = (AudioManager)mContext.getSystemService(Context.AUDIO_SERVICE); 
     int streamVolume = mAudioManager.getStreamVolume(AudioManager.STREAM_MUSIC)*2; 
     thr1 = new Runnable() { 
      public void run() { 
       mSoundPool.play(soundId, 0, streamVolume, 1, -1, 1f); //0 = no loop, -1 = loop forever 
      } 
     }; 


    thr2 = new Runnable() { 
     public void run() { 
      mSoundPool.play(soundId, 0, streamVolume, 1, -1, 1f); 
     } 
    }; 
    thr1.run(); 
    try { 
     Thread.sleep(400); 
    } catch (InterruptedException e) { 
      // TODO Auto-generated catch block 
      e.printStackTrace(); 
    } 
     thr2.run(); 
    } 

回答