2012-10-09 123 views
0

我想找到一種方法來確定我的應用程序是否被操作系統關閉/銷燬(不管正確的術語是什麼)。我在Android Application類中找到了onCreate()方法,但沒有找到onDestroy()或同等方法。 (Application Documentation我如何知道我的應用程序正在關閉?

儘管活動生命週期通常足夠,但我有資源花費時間來釋放並需要跨多個活動使用。在活動的任何結束生命週期調用(,onStoponDestroy)上處理這些資源的成本高昂且不切實際。 (爲了澄清,我不想以編程方式關閉我的Android應用程序,我發現了很多文檔和SO問題,我也不關心Activity的生命週期。)我不在乎控制何時我的應用程序關閉了,但是我希望在這樣做的時候能夠提出申請。

+2

對不起,但您不明白Android上的應用程序是如何在內部工作的。除非您的申請程序被終止,否則不存在應用程序關閉之類的事情 –

回答

2

我想找到一種方法來確定,如果我的應用程序被關閉/破壞(無論正確的術語)的操作系統。

對不起,但這並沒有發生。正如WebnetMobile.com在他的評論中指出的那樣,你的應用程序被Android終止該過程而銷燬,而你沒有被告知這個事實。

我有資源,需要時間來騰出

既然你選擇了不解釋這些「資源」是他們爲什麼「需要時間來釋放」,這將是困難的人協助您制定替代計劃。

1

我推薦的是有一個函數(我們稱之爲killMyApp)和當前正在運行的活動的全局計數(actCount)。在每個onCreate中,增加actCount。在每個onDestroy中,遞減actCount,然後,如果actCount == 0,調用killMyApp,這將清理所有剩下的好東西。

相關問題