0

我的应用程序必须保持摄像头被捕获,直到被 Activity 手动释放(我意识到这是不好的做法,因为没有其他应用程序能够使用摄像头)。我曾经能够通过避免在 CameraPreview 的 surfaceDestroyed 函数中调用 camera.release() 来做到这一点,但这在 2.1 之后不再有效。

有什么方法可以让相机处于囚禁状态,而不会在surfaceDestroyed后自动释放?

作为要回答的解决方法问题而不是前一个问题,是否有任何方法可以从服务中拍照,而不会使预览视图膨胀?

4

1 回答 1

0

您可以调用 camera.lock() 重新获得相机硬件上的锁。失败,您可以重新打开相机。

但是,这样做的缺点比阻止其他应用程序访问相机要糟糕得多。这也会迅速耗尽电池电量,因为它会为相机传感器和 DSP 供电。根据这个线程,这可能会在两个小时内杀死电池。

于 2011-02-19T00:53:42.687 回答