logcat
ビューエラー
info(701,0)
を取得し、それを使用する方法
info(701,0)
Android:Media Playerのエラーをどのように取得して使用しますか?
で、ビデオを読み込まない場合
私はビデオプレーヤー
ためSurfaceView
を使うのか?
サンプル:
if(error == 701){
....
}
logcat
ビューエラー
info(701,0)
を取得し、それを使用する方法
info(701,0)
Android:Media Playerのエラーをどのように取得して使用しますか?
で、ビデオを読み込まない場合
私はビデオプレーヤー
ためSurfaceView
を使うのか?
サンプル:
if(error == 701){
....
}
はい、あなたはVideoViewにsetOnErrorListener(..)
を使用して、そこにエラーを処理することができます。次に例を示します。
mVideoView.setOnErrorListener(new MediaPlayer.OnErrorListener() {
@Override
public boolean onError(MediaPlayer mp, int what, int extra) {
switch(what){
case MediaPlayer.MEDIA_ERROR_UNKNOWN:
// handle MEDIA_ERROR_UNKNOWN, optionally handle extras
handleExtras(extra);
break;
case MediaPlayer.MEDIA_ERROR_SERVER_DIED:
// handle MEDIA_ERROR_SERVER_DIED, optionally handle extras
handleExtras(extra);
break;
}
return true;
}
});
...
private void handleExtras(int extra){
switch(extra){
case MediaPlayer.MEDIA_ERROR_IO:
// handle MEDIA_ERROR_IO
break;
case MediaPlayer.MEDIA_ERROR_MALFORMED:
// handle MEDIA_ERROR_MALFORMED
break;
case MediaPlayer.MEDIA_ERROR_UNSUPPORTED:
// handle MEDIA_ERROR_UNSPECIFIED
break;
case MediaPlayer.MEDIA_ERROR_TIMED_OUT:
// handle MEDIA_ERROR_TIMED_OUT
break;
}
}
編集:701は非常にあなたがsetInfoListener()
と同じパターンに従う情報リスナーを添付する必要がある情報を処理するために、情報やエラーではありませんエラーリスナーこれはあなたが探しているものへの17の最小APIと参照が必要であることを
mVideoView.setOnInfoListener(new MediaPlayer.OnInfoListener() {
@Override
public boolean onInfo(MediaPlayer mp, int what, int extra) {
switch(what){
case MediaPlayer.MEDIA_INFO_BUFFERING_START:
// handle info 701 here, MEDIA_INFO_BUFFERING_START corresponds to 701
break;
}
return true;
}
});
注:ここでは一例で、これは有用であった
https://developer.android.com/reference/android/media/MediaPlayer.html#MEDIA_INFO_BUFFERING_START
希望。