2013-10-24 1 views
2

Маленькая игра для воспроизведения короткого звука после onclick ImageButton. Но после касания 10 раз MediaPlayer перестает воспроизводить звуки на короткое время. После этого он снова воспроизводит звук. Когда я смотрю на консоль LogCat, он показывает ошибку: E/MediaPlayer(19584): error (1, -2147483648).Android MediaPlayer перестает играть через некоторое время

Пожалуйста, можете ли вы показать мне способ найти решение проблемы? Почему MediaPlayer дает мне ошибку?

Я использую эту часть кода для воспроизведения звука:

public void playAudio() { 
    try { 
     mediaPlayer = MediaPlayer.create(getBaseContext(), R.raw.trefa); 
    mediaPlayer.setLooping(false); 
    mediaPlayer.start(); 
    mediaPlayer.setOnCompletionListener(new OnCompletionListener() { 
      public void onCompletion(MediaPlayer arg0) { 

      } 
    }); 
    } catch (Exception e) { 
    Log.e("beep", "error: " + e.getMessage(), e); 
    } 
    } 
+1

«Но после касания 10-ти раз MediaPlayer перестает воспроизводить звуки на короткое время», он воспроизводит нормально одним касанием? –

+0

С одним касанием в порядке, когда я нажимаю больше раз (быстро или медленно), все в порядке. Затем после нескольких щелчков (приблизительно 10 - не совсем) звук отключен. Затем через некоторое время (около 10-15 секунд) снова воспроизводится звук. – mira

+1

Для коротких аудиофайлов, которые мы используем в играх. Класс звукового пула - лучший выбор. MediaPlayer является дорогостоящим с точки зрения обработки. Если возможно, перейдите в SoundPool как можно раньше. –

ответ