2014-07-15 50 views
6

我閱讀了關於活動生命週期及其方法的所有信息。關閉應用程序時調用了什麼方法

我仍然無法找到答案: 當我關閉我的應用程序時,從「打開應用程序」菜單(在galaxy4中長按主屏幕按鈕,在nexus5中它是正確的按鈕......)什麼方法是被稱爲?如果有的話?

換句話說,我的活動正在啓動一項服務。 如果應用程序(活動)正在關閉,我想終止服務。 (onDestory根本就不可靠,前面說過很多次)

在此先感謝!

+1

onStop()總是自動調用 – EpicPandaForce

+1

testit:在兩個方法上設置斷點:onDestroy和onStop – TheOnlyJakobob

+1

您將從此鏈接找到答案http://stackoverflow.com/questions/24163541/application-swipe-to- remove-app-recent-app-list –

回答

1

您將通過onPause(),然後onStop()。在蜂窩前(API 11)設備上,您的應用可以在onPause()返回後的任何時間被殺死。沒有更多的方法稱爲期間。後蜂窩你至少會得到onStop()

+1

我忘記提及,只有當有人停止\殺死我的應用程序時,我才需要這種行爲。 據我所知 - onStop將在許多其他情況下被調用,其中我不想終止服務。 – nivklein

+0

任務管理器殺死您的應用時,您不會收到任何通知。當你的活動不再處於前臺時,你會得到'onStop()',那麼你的進程可以在任何時候被終止。 –

4

onPause()是唯一被稱爲always的方法。從onPause()狀態Android OS可以通過繞過onStop和onDestroy的許多原因殺死這個應用程序。我認爲我們不能順利地控制這種意外終止的行爲。服務可以定期檢查應用程序的狀態。

相關問題