锁定和解锁是指屏幕休眠或按下设备电源开关使设备进入休眠状态然后重新唤醒?
如果是这样,我怀疑您需要在 onPause 中释放相机资源,然后通过表面视图回调在 onResume 中再次启动预览。
在我处理相机的 Android 2.2 和 2.3 应用程序中,我使用的模式是:
onCreate:
- get reference to the camera
onResume:
- sv = (SurfaceView)this.findViewById(R.id.capture_SurfaceView);
mHolder = sv.getHolder();
mHolder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS);
mHolder.setSizeFromLayout();
mHolder.addCallback(this);
surfaceChanged:
- Camera.setPreviewDisplayHolder()
- Camera.startPreview()
onPause:
- Camera.stopPreview
- SurfaceHolder.removeCallback()
- Camera.release()
这对我来说非常适用于设备关闭然后重新打开,或者我的应用程序进入后台。