2011-12-02 98 views
1

我已經看了很多關於此的其他線程,但還沒有任何運氣,但他們的解決方案。 當我第一次啓動我的應用時,我注意到onResume在onCreate之後被調用。 (不知道爲什麼) 我的問題是當我嘗試第二次運行應用程序。 onCreate和onResume都不會被調用,它只是坐在那裏。 另外,我有這些設置在我的清單設置:ANDROID活動強制停止重新啓動

android:clearTaskOnLaunch="true" 
android:screenOrientation="landscape" 
android:noHistory="true" 

如果我想運行我的應用程序不止一次,我必須進入設置 - >應用程序 - >應用程序 - 名稱 - >強制關閉

(我沒有訪問尋找任何迴路或壞的錯誤,可能是因爲我使用的是它自己的線程庫中造成粘連。)

有沒有一種辦法可以解決這個?

+0

「我的問題是當我嘗試第二次運行應用程序時,onCreate和onResume都沒有被調用,它只是坐在那裏。」如何讓應用真正從頭開始運行? – user980058

+0

您是否嘗試清理您的項目? –

+0

只是試圖清洗它。它也沒有幫助。 – user980058

回答

0

這是android manages the activities的方式。如果您希望自己的活動經歷整個生命週期,請明確調用其finish()方法。

+0

我已經嘗試把finish()放在onStop和onPause中,但它沒有幫助。我並不完全相信他們甚至被召喚。 – user980058

+0

爲了確保它們被調用,可以給它們添加一個斷點,或者用Log.e(String,String)'在其中打印一些消息,例如 –

+0

將'android:clearTaskOnLaunch'設置爲「false」,看看你得到了什麼。如果您提供了在調用finish()方法後未重新創建的活動的源代碼,那將會很好。 –

4

在您的onDestroy方法中調用Process.sendSignal(Process.myPid(), Process.SIGNAL_KILL);。這不好,但是這個問題的最佳解決方案。