Я использую медиаплеер для воспроизведения mp3 с URL-адреса, но мой медиаплеер не вызывает OnPreparedListener после того, как я устанавливаю URL-адрес в качестве источника данных. И я вызвал PrepareAsync (). URL-адрес работает в браузере. И я не получаю никаких ошибок, поэтому, пожалуйста, помогите мне.

Так я настраиваю слушателей. И я все реализовал.

 mediaPlayer.setOnCompletionListener(this);
    mediaPlayer.setOnErrorListener(this);
    mediaPlayer.setOnPreparedListener(this);
    mediaPlayer.setOnInfoListener(this);
    mediaPlayer.setOnBufferingUpdateListener(this);

А это мой ErrorListener

//Handle errors
    @Override
    public boolean onError(MediaPlayer mp, int what, int extra) {
        //Invoked when there has been an error during an asynchronous operation.
        switch (what) {
            case MediaPlayer.MEDIA_ERROR_NOT_VALID_FOR_PROGRESSIVE_PLAYBACK:
                Log.d("MediaPlayer Error", "MEDIA ERROR NOT VALID FOR PROGRESSIVE PLAYBACK " + extra);
                break;
            case MediaPlayer.MEDIA_ERROR_SERVER_DIED:
                Log.d("MediaPlayer Error", "MEDIA ERROR SERVER DIED " + extra);
                break;
            case MediaPlayer.MEDIA_ERROR_UNKNOWN:
                Log.d("MediaPlayer Error", "MEDIA ERROR UNKNOWN " + extra);
                break;
        }
        return false;
    }

А это мой OnPreparedListener

 @Override
    public void onPrepared(MediaPlayer mp) {
        //Invoked when the media source is ready for playback.
        startMedia();
    }
0
DAS 7 Июл 2017 в 09:05
Отсутствие вызова OnPreparedListner означает, что onPrepared не будет вызван. Вам необходимо предварительно установить OnpreparedListner. Ты это делаешь? Покажи нам небольшой код.
 – 
krishan
7 Июл 2017 в 09:10
Для получения ошибки используйте setOnErrorListener, и вы получите сообщение об ошибке onError, если что-то пойдет не так.
 – 
krishan
7 Июл 2017 в 09:12
MediaPlayer.setOnCompletionListener (это); mediaPlayer.setOnErrorListener (это); mediaPlayer.setOnPreparedListener (это); mediaPlayer.setOnInfoListener (это); mediaPlayer.setOnBufferingUpdateListener (это);
 – 
DAS
7 Июл 2017 в 09:12
Так я настраиваю слушателей.
 – 
DAS
7 Июл 2017 в 09:13
1
Используйте библиотеку exomedia для воспроизведения звука с URL-адреса проверьте это
 – 
Hitesh Gehlot
7 Июл 2017 в 09:25

1 ответ

Лучший ответ

Используя ExoAudioPlayer, я исправил проблему.

0
DAS 22 Авг 2017 в 14:24