private void InitCamera(){
     try{
     mCamera = Camera.open();
     } catch (Exception e) {
            e.printStackTrace();
        }
    }
 
    @Override
    protected void onPause() {
        super.onPause();
        try{
        if (mCamera != null) {
         mCamera.setPreviewCallback(null); // !!这个必须在前,不然退出出错
            mCamera.stopPreview();
            mCamera.release();

            mCamera = null;
        } 
        } catch (Exception e) {
            e.printStackTrace();
        } 
    }
public void surfaceChanged(SurfaceHolder arg0, int arg1, int arg2, int arg3) {
// TODO Auto-generated method stub
if (mCamera == null) {
            return;
        }
        mCamera.stopPreview();
        mCamera.setPreviewCallback(this);
        mCamera.setDisplayOrientation(90); //设置横行录制
        //获取摄像头参数
        Camera.Parameters parameters = mCamera.getParameters();
        Size size = parameters.getPreviewSize();

        VideoWidth=size.width;
        VideoHeight=size.height;
        VideoFormatIndex=parameters.getPreviewFormat();
        
        mCamera.startPreview();
}
cameracamera.open()异常Android