2012-07-16 92 views
0

我用MediaRecorderService錄製音頻。當錄音過程中,當我嘗試手動啓動相機,我得到這個:相機應用程序和MediaRecorder干擾

enter image description here

有時我的應用程序崩潰,並且記錄只是說「死亡過程」。

如何處理這樣的情況,我的意思是,也許檢測到相機應用想記錄的東西,這樣我就可以自由MediaRecorder

回答

0

是必須需要釋放介質記錄來源相機活動可以將使用所有這些相同的資源。

+0

我知道,我只是不知道如何檢測相機的應用程序推出,因爲它是一個系統的應用程序和服務我不知道這件事。 – 2012-07-16 13:54:00

0

你應該嘗試當您退出活動發佈媒體記錄器資源。 也許這就是原因。 即使你完成了你的活動,它仍然會存在,如果你沒有關閉它。

+0

我真的很孤單,但是......嘿,夥計們!你甚至沒有閱讀這個問題就回答!我的MediaRecorder在Service中工作。 – 2012-07-24 09:11:49

+0

AHA ...是的,這是我的錯。我錯過了第一行。 – 2012-07-24 09:29:44

+0

也許您可以在啓動之前檢查MediaRecorder處於正確的狀態。 http://developer.android.com/reference/android/media/MediaRecorder.html。我猜想可以在MediaRecorder狀態圖中找到原因。 – 2012-07-24 09:31:28

0

AFAIK無法聆聽硬件攝像頭的啓動。

Camera不播,這將使你在發生錯誤之前釋放MediaRecorder任何行動。相機播放的動作是ACTION_NEW_PICTURE, ACTION_NEW_VIDEO, CAMERA_ERROR_SERVER_DIEDCAMERA_ERROR_UNKNOWN,這兩者都不允許您在發生錯誤之前釋放MediaRecorder。

+0

所以,我不得不離開我的用戶不快樂。 – 2012-07-29 15:10:18

+2

如果您預先設定了正確的期望,用戶將不會不高興。向用戶解釋由於Android系統的工作原理,在您的應用程序正在錄製時無法使用相機。我無法聲稱知道這會限制您的應用的市場吸引力,但它是避免不滿用戶的一種方式。 – 2012-07-29 23:10:54