2016-01-09 3 views
1

Итак, я новичок в java и имею игру, в которой основной деятельностью является класс «Игра», который расширяет Activity, «MainThread» и GamePanel класс, который расширяет SurfaceView http://blog.ashwanik.in/2014/12/play-sounds-in-android-application.htmlКажется, я не могу найти, как добавить SoundPool в свою конкретную игру.

SoundPoolManager.CreateInstance(); 
    List<integer> sounds = new ArrayList<integer>(); 
    sounds.add(R.raw.first); 
    sounds.add(R.raw.second); 
    sounds.add(R.raw.third); 
    SoundPoolManager.getInstance().setSounds(sounds); 
    try { 
    SoundPoolManager.getInstance().InitializeSoundPool(this, new ISoundPoolLoaded() { 
    @Override 
    public void onSuccess() { 
    } 
}); 
} catch (Exception e) { 
e.printStackTrace(); 
} 

проблема заключается в том, что, когда я добавить этот код сверху в любом классе Game (основной) или GamePanel (который имеет большую часть кода в игре) она не дает я ошибка или что-то, что он просто не воспроизводит звук, большинство уроков на этом имеют объяснения, как это сделать с кнопками, но я не могу найти его, как заставить его играть в реальной игре.

ответ

1

SoundPool класс может помочь нам управлять количеством звуковых потоков, отображаемых за один раз. SoundPool загружает звук асинхронно, но до уровня API Android 8, мы не могли быть уверены, правильно ли загружен звук. Вот почему мы должны проверить, загружен ли образец в OnLoadCompleteListener. Итак, в этом примере мы создадим приложение, которое воспроизводит, воспроизводит в цикле, останавливает и приостанавливает звуковой сигнал с помощью Android SoundPool.class.

, пожалуйста, проверьте это tutorial.

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