2011-02-19 122 views
0

我的應用程序必須保持相機捕捉,直到通過活動手動發佈(我認識到這是不好的做法,因爲沒有其他應用程序能夠使用相機)。我曾經可以通過避免cameraPreview中的surfaceDestroyed函數中的camera.release()調用來完成此操作,但這不再適用於2.1版本。在拍攝照片後讓相機捕捉到一個活動

是否有任何方法來保持相機被囚禁,而不會在surfaceDestroyed後自動釋放它?

作爲一個解決方法而不是前一個問題的解決方法,是否有任何方法可以從服務中拍攝圖片,而無需預覽視圖膨脹?

回答

0

您可能可以調用camera.lock()重新獲取相機硬件的鎖定。如果不能重新打開相機。

但是,這樣做的缺點比阻止其他應用程序訪問攝像頭要糟糕得多。這也會使電池快速耗盡,因爲它可以保持相機傳感器和DSP供電。根據this thread,這可能會導致電池在兩個小時內死亡。

+0

感謝您的回答,我會盡快鎖定相機。電池耗盡並不是什麼大問題,我的應用程序將需要插入電話。如果重新鎖定相機不起作用,有沒有辦法重新打開相機而不會彈出表面視圖? – 2011-02-19 01:08:07

相關問題