在我製作的應用程序中,有12個不同的活動鏈接到主頁面。他們都是彼此獨立的。我希望從後端堆棧中刪除以前的活動,以便應用程序佔用更少的內存。 我設法讓每個活動的單個實例使用如何在Android中設置後臺堆棧中的活動限制?
android:launchMode = "singleInstance"
但仍當這些活動從主頁開始,12個不同的頁面去後退堆棧和應用程序崩潰。 什麼是解決方法?
在我製作的應用程序中,有12個不同的活動鏈接到主頁面。他們都是彼此獨立的。我希望從後端堆棧中刪除以前的活動,以便應用程序佔用更少的內存。 我設法讓每個活動的單個實例使用如何在Android中設置後臺堆棧中的活動限制?
android:launchMode = "singleInstance"
但仍當這些活動從主頁開始,12個不同的頁面去後退堆棧和應用程序崩潰。 什麼是解決方法?
聽起來像android:noHistory =「true」將是您的解決方案。
值爲「true」表示該活動不會留下歷史跡線 。它不會保留在任務的活動堆棧中,因此 用戶將無法返回到該堆棧。
'android:noHistory =「true」' 似乎不工作得很好。我的意思是分配的內存甚至還在開放活動中上升。如果我在兩次活動之間切換幾次,內存會不斷上升(每次活動調用大約20MB),直到應用程序崩潰到180MB。如果沒有歷史活動在背後,這不應該發生。 –
,12個activitys稱之爲上backpress。
Intent intent = new Intent(youeActivity.this,MainActivity.class);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK|Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);
finish();
manofest添加這一個
android:excludeFromRecents="true"
嘗試增加Intent.FLAG_ACTIVITY_NO_HISTORY); 這個標誌,當你從一個活動另一個去......這個東西,你可以在清單中定義以及 – santoXme