本文整理匯總了Java中android.media.MediaPlayer.MEDIA_ERROR_IO屬性的典型用法代碼示例。如果您正苦於以下問題:Java MediaPlayer.MEDIA_ERROR_IO屬性的具體用法?Java MediaPlayer.MEDIA_ERROR_IO怎麽用?Java MediaPlayer.MEDIA_ERROR_IO使用的例子?那麽, 這裏精選的屬性代碼示例或許可以為您提供幫助。您也可以進一步了解該屬性所在類android.media.MediaPlayer
的用法示例。
在下文中一共展示了MediaPlayer.MEDIA_ERROR_IO屬性的4個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。
示例1: errToStr
private String errToStr(int framework_err, int impl_err) {
String msg = null;
if (framework_err == MediaPlayer.MEDIA_ERROR_IO) {
msg = "IO Error";
} else if (framework_err == MediaPlayer.MEDIA_ERROR_MALFORMED) {
msg = "Bitstream unsupported";
} else if (framework_err == MediaPlayer.MEDIA_ERROR_NOT_VALID_FOR_PROGRESSIVE_PLAYBACK) {
msg = "Invalid progressive playback";
} else if (framework_err == MediaPlayer.MEDIA_ERROR_TIMED_OUT) {
msg = "Operation time out";
} else if (framework_err == MediaPlayer.MEDIA_ERROR_SERVER_DIED) {
msg = "MediaPlayer died";
} else if (framework_err == MediaPlayer.MEDIA_ERROR_UNSUPPORTED) {
msg = "File spec is not supported in the media framework";
} else if (framework_err == MediaPlayer.MEDIA_ERROR_UNKNOWN) {
msg = "Unknown error";
}
return msg;
}
示例2: onError
@Override
public boolean onError(MediaPlayer mp, int what, int extra) {
AppToast.showToast("播放失敗");
Log.d(TAG, "播放失敗, " + what + ", " + extra);
switch (what) {
case MediaPlayer.MEDIA_ERROR_IO:
Log.d(TAG, "MEDIA_ERROR_IO");
break;
case MediaPlayer.MEDIA_ERROR_SERVER_DIED:
Log.d(TAG, "MEDIA_ERROR_SERVER_DIED");
break;
case MediaPlayer.MEDIA_ERROR_UNKNOWN:
Log.d(TAG, "MEDIA_ERROR_UNKNOWN");
break;
case MediaPlayer.MEDIA_ERROR_TIMED_OUT:
Log.d(TAG, "MEDIA_ERROR_TIMED_OUT");
break;
default:
break;
}
return true;
}
示例3: onError
@Override
public boolean onError(MediaPlayer mp, int what, int extra) {
LogUtil.d(TAG, "onError:" + what + ", extra:" + extra);
if (what == -38) {
isError38 = true;
return false;
}
posHandler.removeMessages(MSG_UPDATE_PROGRESS);
isError38 = false;
mCurrentState = IMediaPlayer.PlayState.ERROR;
JSONObject jsonObject = new JSONObject();
try {
jsonObject.put("msg", "what: " + what + "; extra:" + extra);
} catch (JSONException e) {
e.printStackTrace();
}
IMediaPlayer.ErrorType errorType;
switch (what) {
case MediaPlayer.MEDIA_ERROR_IO:
// Stream服務端返回錯誤 (bad request, unauthorized, forbidden, not found etc)
errorType = IMediaPlayer.ErrorType.MEDIA_ERROR_INVALID_REQUEST;
break;
case MediaPlayer.MEDIA_ERROR_TIMED_OUT:
// 端無法連接stream服務端
errorType = IMediaPlayer.ErrorType.MEDIA_ERROR_SERVICE_UNAVAILABLE;
break;
case MediaPlayer.MEDIA_ERROR_UNSUPPORTED:
// 端內部錯誤
errorType = IMediaPlayer.ErrorType.MEDIA_ERROR_INTERNAL_DEVICE_ERROR;
break;
case MediaPlayer.MEDIA_ERROR_MALFORMED:
// stream服務端接受請求,但未能正確處理 ?????
errorType = IMediaPlayer.ErrorType.MEDIA_ERROR_INTERNAL_SERVER_ERROR;
break;
default:
// 未知錯誤
errorType = IMediaPlayer.ErrorType.MEDIA_ERROR_UNKNOWN;
break;
}
fireOnError(jsonObject.toString(), errorType);
return false;
}
示例4: onError
@Override
public boolean onError(MediaPlayer mp, int what, int extra) {
switch (what) {
case MediaPlayer.MEDIA_ERROR_UNKNOWN:
LogHelper.e(LOG_TAG, "Unknown media playback error");
break;
case MediaPlayer.MEDIA_ERROR_SERVER_DIED:
LogHelper.e(LOG_TAG, "Connection to server lost");
break;
default:
LogHelper.e(LOG_TAG, "Generic audio playback error");
break;
}
switch (extra) {
case MediaPlayer.MEDIA_ERROR_IO:
LogHelper.e(LOG_TAG, "IO media error.");
break;
case MediaPlayer.MEDIA_ERROR_MALFORMED:
LogHelper.e(LOG_TAG, "Malformed media.");
break;
case MediaPlayer.MEDIA_ERROR_UNSUPPORTED:
LogHelper.e(LOG_TAG, "Unsupported content type");
break;
case MediaPlayer.MEDIA_ERROR_TIMED_OUT:
LogHelper.e(LOG_TAG, "Media timeout");
break;
default:
LogHelper.e(LOG_TAG, "Other case of media playback error");
break;
}
// stop playback
stopPlayback(false);
// try to reconnect to stream - limited to ten attempts
if (mReconnectCounter < 10) {
mReconnectCounter++;
LogHelper.e(LOG_TAG, "Trying to reconnect after media playback error - attempt #" + mReconnectCounter + ".");
startPlayback();
}
return true;
}