在拍摄照片后让相机捕捉到一个活动

在拍摄照片后让相机捕捉到一个活动

问题描述:

我的应用程序必须保持相机捕捉,直到通过活动手动发布(我认识到这是不好的做法,因为没有其他应用程序能够使用相机)。我曾经可以通过避免cameraPreview中的surfaceDestroyed函数中的camera.release()调用来完成此操作,但这不再适用于2.1版本。在拍摄照片后让相机捕捉到一个活动

是否有任何方法来保持相机被*,而不会在surfaceDestroyed后自动释放它?

作为一个解决方法而不是前一个问题的解决方法,是否有任何方法可以从服务中拍摄图片,而无需预览视图膨胀?

您可能可以调用camera.lock()重新获取相机硬件的锁定。如果不能重新打开相机。

但是,这样做的缺点比阻止其他应用程序访问摄像头要糟糕得多。这也会使电池快速耗尽,因为它可以保持相机传感器和DSP供电。根据this thread,这可能会导致电池在两个小时内死亡。

+0

感谢您的回答,我会尽快锁定相机。电池耗尽并不是什么大问题,我的应用程序将需要插入电话。如果重新锁定相机不起作用,有没有办法重新打开相机而不会弹出表面视图? – 2011-02-19 01:08:07