2016-02-02 46 views
1

當我的應用程序在一段時間內處於非活動狀態時,android會終止其進程,使所有靜態變量爲空。破壞活動等。我希望我的應用程序啓動MainActivity(在manifest中聲明爲啓動器的活動),而不是在應用程序最小化並且隨後死亡時處於前臺的活動。當android殺死我的進程時啓動MainActivity

在此先感謝

回答

0

做到這將是存儲你所需要的數據(即你在你的靜態瓦爾只是存儲)的數據庫,並使用記憶就像高速緩存的正確的方式

不太好錘子時間做法很簡單。在需要該信息的活動的每個onCreate中,檢查信息是否爲空,如果是,請調用finish()startActivity並選擇所需信息。

@override 
protected void onCreate(){ 
     super.onCreate(); 
     ... 
     if(Singleton.getInfo() == null){ 
     this.finish(); 
     startActivity(...) 
     } 
} 
+0

這是最好的主意如何解決我的問題 –

0

或者,如果你需要通過從該活動的一些信息u可以去MainActivity與intent`s。

0

另一種可能性:由於Clearing the back stack描述您可以添加clearTaskOnLaunch="true"根系活力:

如果這個屬性在任務中的根系活力設置爲「真」,則 棧向下清除當用戶離開 任務並返回到根活動。換句話說,這與alwaysRetainTaskState的 相反。用戶總是返回到初始狀態下的任務,即使在離開任務一段時間後也是如此。