Проблема с воспроизведением звука с помощью setNextMediaPlayer

Мне нужно воспроизвести звук без пробелов между lopping, звук должен быть зациклен навсегда без пробелов. Использование setNextMediaPlayer объединяет только две звуковые дорожки без зазоров, после чего автоматически перестает воспроизводить звук, но на этот раз он не зацикливается. Заранее спасибо.

  mp1 = MediaPlayer.create(getApplicationContext(), R.raw.loop); mp2 = MediaPlayer.create(getApplicationContext(), R.raw.loop); protected void play() { // TODO Auto-generated method stub mp1.start(); mp1.setNextMediaPlayer(mp2); // mp2.setNextMediaPlayer(mp1); } 

Я пытался помочь парню сделать это всего несколько дней назад. См. Этот вопрос .

Я не уверен, удалось ли ему достичь того, чего он хотел, но я считаю, что ваша проблема в том, что MediaPlayer не находится в подготовленном состоянии после окончания второй дорожки. Вам нужно будет использовать прослушиватель onCompletion чтобы вернуть его в подготовленное состояние, вызвав stop() и prepareAsync() . Если он не должен находиться в подготовленном состоянии (я честно не уверен), было бы быстрее вызвать seekTo(0) из прослушивателя onCompletion .

Вам определенно нужно раскомментировать mp2.setNextMediaPlayer(mp1); линия.