2011-11-04 150 views
1

當應用程序終止時,我需要終止後臺線程。最簡單的方法是什麼?檢測應用程序不再處於活動狀態

我所能想到的就是通過讓每個活動報告onCreate和onDestory事件到應用程序並且當數字達到零時假設應用程序被終止?

回答

0

很抱歉編輯了這個,因爲我沒有意識到我的答案只適用於模擬環境。您可能可以使用registerActivityLifecycleCallbacks,但我不確定。

+0

你真的已經閱讀了文檔對onTerminate()所說的嗎? – Saideira

+0

是的,我的壞,我從來沒有用過它只知道函數存在。 – Bobbake4

+0

是的,在大多數設備運行API lvl 14時,您可以在兩三年內使用'registerActivityLifecycleCallbacks'(不能肯定地說,因爲javadoc中沒有它的實際描述)。:(在此期間,引用你的活動計數可能是最安全的計劃。 – Pedantic

2

您可能想考慮讓後臺線程作爲服務或服務運行。然後,您可以將這些綁定到每個活動,並在活動結束時解除綁定。當最後一項活動從服務中解除綁定時,服務將停止。

0

當一個應用程序在Android終止時,整個Unix進程都會被終止,所以所有後臺線程都會在那個時候停止。

相關問題