Android 相机开发 报Camera is being u

2021-01-14  本文已影响0人  黑芝麻胡

1、错误如图所示:


image.png

这个问题是关于相机调用后的释放问题
解决如下:
在activity的 onPause、onDestroy中加入如下代码

 @Override
    protected void onPause() {
        super.onPause();
        releaseCamera();              // release the camera immediately on pause event
    }

    private void releaseCamera() {
        if (mCamera != null){
            mCamera.setPreviewCallback(null);
            mPreview.getHolder().removeCallback(mPreview);
            mCamera.stopPreview();
            mCamera.release();        // release the camera for other applications
            mCamera = null;
        }
    }

    @Override
    protected void onDestroy() {
        super.onDestroy();
        releaseCameraAndPreview();
    }

    private void releaseCameraAndPreview() {
        if (mCamera != null) {
            mCamera.stopPreview();
            mCamera.release();
            mCamera = null;
        }
        if(mPreview != null){
            mPreview.destroyDrawingCache();
        }
    }
上一篇 下一篇

猜你喜欢

热点阅读