2014-04-23 4 views
0

У меня есть шесть кнопок и вы хотите играть в разные .mp3-файлы на основе кликов. Я реализовал OnClick-метод как это:Android SoundPool не работает - просто доставляйте клик-звук

SoundPool sp = new SoundPool(1, AudioManager.STREAM_MUSIC, 0); 

if(view = screamButton) { 
    soundId = sp.load(getContext(), R.raw.scream, 1); 
} 
// Some else if - statements 

sp.play(soundId, 5, 5, 0, 0, 1); 

Я также пытался создать AudioManager для настройки громкости, но это ничего не изменило.

Что может быть неправильным?

Hank

ответ

0

У меня была такая же проблема, как и вы.

Мое решение было:

В OnCreate поставить это:

//The 20 is the maximum let the audio reproduce at the same time 
    sp = new SoundPool(20, AudioManager.STREAM_MUSIC, 0); 
    //volume control from the cellphone: 
    this.setVolumeControlStream(AudioManager.STREAM_MUSIC); 
    //load the audio 
    soundId= sp.load(this,R.raw.scream,1); 

И, наконец, когда вы хотите, чтобы воспроизведение звука поставить это:

 sp.play(soundId, 1, 1, 0, 0, 1); 

Он работает нормально меня.

Я надеюсь вам помочь.

С уважением, Пьеро.

Смежные вопросы