1. 程式人生 > >android VideoView開發總結

android VideoView開發總結

<span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);">1.VideoView播放視訊檔案報錯時,可呼叫:</span>
public void onCreate(){
	...
	mVideoView.setOnErrorListener(videoErrorListener);
	...

}

private OnErrorListener videoErrorListener = new OnErrorListener(){
	void onError(){
	return true;//返回true,不彈出報錯對話方塊
	}
}

注意:

在MediaPlayer與SurcaceView播放視訊的時候,如果播放的視訊碼流有誤,使Media Server Died, 這時如果重新釋放MediaPlayer並建立,有時會出現 [SurfaceView] connect: already connected (cur=3, req=3) setVideoSurfaceTexture failed: -22這樣的錯誤(這是在htc上出現的)或者出現 E/MemoryHeapBase(13312): mmap(fd=21, size=0) failed (Invalid argument)(這是在ipad上出現的)

分析原因應該是surfaceview佔用,與新建立的mediaplayer無法正常關聯,需要重新建立surfaceview

可行方法

surfaceView.setVisibility(View.GONE);

surfaceView.setVisibility(View.VISIBLE);