2012-06-07 62 views
0

我正在編寫一個程序,該程序在後臺連續記錄音頻,並將不斷填充緩衝區中的該數據,以便可以對其執行處理。阻止應用程序在長時間運行後重新啓動

所以這部分程序有效;即使設備處於睡眠模式,應用程序也會在後臺運行。但是,經過一段時間(可能是1或2小時?),應用程序會突然停止運行,甚至可能會重新啓動。

使用AsyncTask的擴展來執行連續音頻記錄和處理。無論如何要讓這個程序無限期地運行,它的程序是什麼?它無限期地運行直到一個點;除非用戶要求,否則我不希望它關閉。

+0

你確定有東西阻止它運行,它不會崩潰或運行到它無法處理的問題? – Guardanis

+0

什麼是堆棧跟蹤? – kosa

回答

1

Urk。請不要使用AsyncTask!相反,使用IntentService,它在後臺的單獨線程上運行。即使設備處於睡眠狀態,在正常情況下也不應關閉。基本上,只要它的主要方法onHandleIntent()正在運行,它就會運行,直到它完成所有語句爲止。

相關問題