2012-04-04 84 views
2

我有一個基於VOIP的應用程序需要運行24/7 ..但系統是殺害我的應用程序時,我的應用程序是背景..Android:如何避免活動被系統,ActivityManager殺死:處理我的軟件包名稱(pid 935)已經死亡


1)我怎麼知道什麼時候系統正在殺死我的應用程序?
2)我可以設置一些應用程序參數,以便系統不會殺死我的應用程序。
3)我知道如何在用戶點擊應用程序時重新存儲應用程序,但如果系統在下午3點終止我的應用程序,並且在下午3.30時收到的任何數據將永遠無法到達我的應用程序,因爲它被系統殺死。
4)基於服務的設計到我的應用程序將有助於?


怎麼做到這一點,我想讓我的應用程序一直運行,並從服務器端收聽數據。


您的評論將不勝感激。


感謝

回答

1

如何您的應用程序設計的? 24 * 7進程在後臺作爲服務運行嗎?如果不是的話,我會建議把它變成一項服務,因爲如此一來,Android只會讓它失效,以防手機內存過低(現在很少有大量內存可用)。 如果您可以查找要接收的廣播(取決於您正在嘗試執行的操作),您可以設置廣播接收器,然後在廣播收據上調用該服務,否則也會終止服務。這樣,即使服務不會一直運行。 所以,這一切都取決於你的要求是什麼。

+0

標記答案是有用的,如果你真的找到它:) – 2012-04-04 14:29:04

+0

我有本地服務運行會嗎? – NitZRobotKoder 2012-04-04 14:44:46

+0

你能詳細說說你的本地服務是什麼意思嗎?我會建議這種方法。廣播接收器接收來自外部實體的廣播,依次觸發該服務,它將執行其操作,然後如果必須這樣做,則停止其自身/繼續運行。但是請記住,取決於服務內發生的任務以及保持在真正運行24 * 7也將消耗手機電池.. – 2012-04-04 14:52:17

0

你解答了你自己的問題。是的,你需要提供一項服務而不是一項不會被操作系統殺死的活動。

+0

我有一個本地服務運行會嗎? – NitZRobotKoder 2012-04-04 14:44:31