是的,相机应该被释放。在OnDestroy中最小化,但在OnPause中可能更安全

该为我跨越1.6工作使用相机的生命周期 - 3.x的是:

onResume:

- get a ref to camera with Camera.open();

- 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()

这很适合我整个设备入门关闭,然后再打开,或我的应用程序,否则会背景。

另外,请注意未捕获的异常,这可能会导致您无法释放相机。这通常会导致相机硬件锁定,以致杀死并重新启动应用程序仍然无法打开相机。如果发生这种情况,您需要关闭设备电源。

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐