2014-11-25 95 views

回答

2

onDestroy()在UI線程(也稱爲主線程)上被調用。那麼onStartCommand()。因此,在從onDestroy()返回之前,不能調用其他框架方法 - 不僅對於此Service而且對於在同一過程中運行的任何其他Service。此外,任何其他組件(Activity等)的框架回調都不會被調用。當然,在實踐中,如果真的在任何組件的任何生命週期方法中阻塞10秒或更多秒,幾乎肯定會看到「應用程序無響應」消息。

+0

我明白了,我沒有想過。因此,我將在'onDestroy()'中啓動一個線程,稍後將會完成。我希望系統不會殺死這個進程(從我以前的經驗來看,它不會)。 – OneWorld 2014-11-25 08:56:33

+0

@OneWorld的確是要走的路。看到這個 - http://stackoverflow.com/questions/9479311/performing-long-running-operation-in-ondestroy。但是請注意,在你的線程完成任務之前,你的進程仍然有可能被殺死。詳情請看這裏:http://developer.android.com/guide/components/processes-and-threads.html#Lifecycle – curioustechizen 2014-11-25 09:08:14

相關問題