2016-03-21 1 views
1

При использовании сетевого видеофайла, как я могу показать ошибку поиска? OnErrorListener не работает. Вот код в onSurfaceTextureAvailable, оба не реагируют, когда сетевой файл не может быть доставлен.Как я могу показать, не может найти ошибку видео при использовании MediaPlayer в Android

try { 

    mMediaPlayer = new MediaPlayer(); 
    mMediaPlayer.setDataSource(getApplicationContext(), Uri.parse(FILE_URL)); 
    mMediaPlayer.setSurface(surface); 
    mMediaPlayer.setLooping(true); 
    mMediaPlayer.prepareAsync(); 

    // Play video when the media source is ready for playback. 
    mMediaPlayer.setOnPreparedListener(new MediaPlayer.OnPreparedListener() { 
     @Override 
     public void onPrepared(MediaPlayer mediaPlayer) { 
      mediaPlayer.start(); 
      Context context = getApplicationContext(); 
      CharSequence text = "ok"; 
      int duration = Toast.LENGTH_SHORT; 

      Toast toast = Toast.makeText(context, text, duration); 
      toast.show(); 
     } 
    }); 
    mMediaPlayer.setOnErrorListener(new MediaPlayer.OnErrorListener(){ 
     @Override 
     public boolean onError(MediaPlayer mediaPlayer,int what,int extra){ 
      Context context = getApplicationContext(); 
      CharSequence text = "error"; 
      int duration = Toast.LENGTH_SHORT; 

      Toast toast = Toast.makeText(context, text, duration); 
      toast.show(); 
      return true; 
     } 
    }); 

} catch (IllegalArgumentException e) { 
    Log.d(TAG, e.getMessage()); 
} catch (SecurityException e) { 
    Log.d(TAG, e.getMessage()); 
} catch (IllegalStateException e) { 
    Log.d(TAG, e.getMessage()); 
} catch (java.io.IOException e) { 
    Log.d(TAG, e.getMessage()); 
} 
+0

напишите свой код здесь –

+0

Вы также можете использовать пользовательский тост для этого ... –

+0

@ SJ143 Но я не знаю, когда его использовать, см. Мой код. – aboutqx

ответ

-1

вы должны проверить файл перед разобрать файл uri.and, если файл не существует, вы можете жарить message.but если источник видео сети, вы можете получить сообщение об ошибке в MediaPlayer.OnErrorListener.

+0

На самом деле 'MediaPlayer.OnErrorListener' ничего не делает с сетевым файлом 404. – aboutqx