我正在使用Android APIDemo示例代码。

当我运行CameraPreview示例时,最初是giving me an error

我找到了那个,样本正在工作一段时间。
现在,它不再起作用。它说

ERROR/AndroidRuntime(2949): java.lang.RuntimeException: Fail to connect to camera service

是什么原因造成的?它在调用camera.open()时发生。

谢谢,
三通

最佳答案

确保正确释放所有获取的相机资源:

    @Override
public void surfaceDestroyed(SurfaceHolder holder) {
    if (mCam != null) {
        mCam.stopPreview();
        mCam.setPreviewCallback(null);
        mCam.release();
        mCam = null;
    }
}

    @Override
public void surfaceCreated(SurfaceHolder holder) {
    if (mCam == null) {
        mCam = Camera.open();
        try {
            mCam.setPreviewDisplay(holder);

            // TODO test how much setPreviewCallbackWithBuffer is faster
            mCam.setPreviewCallback(this);
        } catch (IOException e) {
            mCam.release();
            mCam = null;
        }
    }
}

08-17 10:31