2011-03-07 88 views
0

我爲我的應用程序使用了回調onPreviewFrame,但是當我嘗試退出活動時會導致問題。如果沒有回撥,點擊back沒有問題,但回撥時,點擊back會提醒我已經執行了相機對象release()之後的呼叫。在非線程安全類(Android Camera)中安全執行函數

注意:回調是線程化的(我相信這是默認實現),並且在它被殺死後繼續嘗試訪問攝像機對象。

如何在沒有此回調的情況下安全地退出活動而導致問題?如果你想看到代碼,我可以發佈一些。

+0

我不確定這是否幫助嘗試通過覆蓋您的活動上的後退按鈕http://developer.android.com/reference/android/hardware/Camera.html#release%28%29 – ingsaurabh

回答

0

這似乎有點可笑的我,但也許在onPause()方法,其中一個通常稱之爲

mCamera.stopPreview() 
mCamera.release() 

回調應該設置:

mCamera.stopPreview() 
mCamera.setPreviewCallback(null) 
mCamera.release() 

這向我們保證,沒有呼叫會一旦預覽已被銷燬,請向相機拍攝。似乎工作..