2010-10-05 67 views
0

我有一個活動,我打開設備相機,每次1分鐘後拍照。這是沒有任何問題的工作。現在我的相機總是打開。當我按主屏幕鍵或通話鍵,我的相機活動將會背景。當我再次點擊我的應用程序時,理想情況下,我的相機活動應該到達前臺並且應該打開相機。相機問題

但是這沒有發生。當我點擊我的應用程序圖標時,我的應用程序崩潰。

有人知道如何解決這個問題嗎?

感謝和問候。

羅漢Wagh

+0

使用'ADB logcat',DDMS,或在Eclipse中DDMS角度來審視在LogCat中檢查與崩潰相關的堆棧跟蹤,以瞭解它發生的位置和原因。 – CommonsWare 2010-10-05 14:16:15

+0

無需代碼或調試轉儲就很難診斷,但我的一個建議是確保您的相機應用程序在失去焦點時正確釋放相機資源。 如果您的活動被破壞時未使用Camera.stopPreview()和Camera.release(),則相機會被鎖定,您必須重置設備才能再次訪問它。 請給我們提供一些更多的細節,有人應該能夠給你一個更具體的答案。 – 2010-10-06 01:01:54

回答

0

你可能在你的應用程序暫停並沒有釋放相機(走進背景),而當你重新啓動你的應用程序(它帶到前臺),您的主要活動大概叫Camera.get()再次。但是,由於您的應用程序已經擁有早期會話中的相機,系統會拋出異常並且應用程序爆炸。

通常,當您的活動暫停時(onPause()),您的應用程序應始終釋放Camera對象。

但是,它聽起來像你一直在後臺運行,捕捉圖片。在這種情況下,您的代碼需要檢查以確定您是否已經擁有相機,並且不需要再次調用Camera.get()(如果是這種情況)。

退房在Android開發者網站,這些議題一些代碼示例: