2012-11-28 59 views
2

我的目的是確保任務中的根活動在任何情況下只有一個實例。所以我設置了android:launchMode =「singleTask」,這在大多數情況下都能正常工作。android:launchMode =「singleTask」不阻止多個根活動共存

但是,如果我將任務快速切換到其他人並返回多次,launchMode設置似乎失去效果。我觀察到一個新的活動實例是在前一個實例被銷燬之前創建的,因爲下面的日誌被捕獲。

有沒有人請幫助提供一個完美的解決方案,以確保在任何情況下的根活動的一個實例?

在此先感謝

11-28 10:43:41.158: W/Launcher(15718): Function Called: [email protected] onPause 
11-28 10:43:41.158: W/Launcher(15718): Function Called: [email protected] onResume 
11-28 10:43:41.468: W/Launcher(15718): Function Called: [email protected] onPause 
11-28 10:43:41.468: W/Launcher(15718): Function Called: [email protected] onResume 
11-28 10:43:41.818: W/Launcher(15718): Function Called: [email protected] onPause 
11-28 10:43:41.868: W/Launcher(15718): Function Called: [email protected] onCreate 
11-28 10:43:42.848: W/Launcher(15718): Function Called: [email protected] onStart 
11-28 10:43:42.868: W/Launcher(15718): Function Called: [email protected] onResume 
11-28 10:43:42.868: W/Launcher(15718): Function Called: [email protected] onPause 
11-28 10:43:42.868: W/Launcher(15718): Function Called: [email protected] onResume 
11-28 10:43:42.868: W/Launcher(15718): Function Called: [email protected] onStop 
11-28 10:43:42.878: W/Launcher(15718): Function Called: [email protected] onDestroy 
11-28 10:43:42.928: W/Launcher(15718): Function Called: [email protected] onPause 
11-28 10:43:42.928: W/Launcher(15718): Function Called: [email protected] onResume 

回答

0

你叫的根系活力finish()而開始另一個活動?如果是這樣,請刪除該語句。

根活動通常只創建一次,只有在它被銷燬時纔會被重新創建。這是沒有在清單中設置任何標誌的正常應用程序行爲。如果根活動已經存在,則將調用onStart()onResume()

相關問題