2013-01-23 72 views
0

我的應用程序中有三個活動,分別爲A,B和C,其中A是登錄活動,在登錄後啓動B,B稍後啓動活動C.現在,如果我在B或C上,並且應用程序在後臺Android決定殺死我的應用程序(因爲這樣的原因)。我希望始終從A開始。但是,如果應用程序未被殺死,我想從我離開的Activity(B或C)開始。如何實現這一目標?如果應用程序被重新創建,如何總是從根Activity開始?

我已經嘗試使用clearTaskOnLaunch作爲如此多的答案建議,但要麼不符合我的要求或我沒有正確使用。

+0

開始也許寫的onStop東西()...(我其實不確定)? – keyser

+0

這應該是你說的。 – tasomaniac

+0

我們將如何知道Android是否會從後臺終止我們的App @Keyser? – aProgrammer

回答

2

這是我以前總是從第一次活動

將這個代碼在B或C

Intent i=new Intent(getApplicationContext(),A.class);//this will close all activities except A 
      i.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); 
      i.putExtra("exit", true); 
      startActivity(i); 

,並在一個的OnCreate

if(getIntent().getBooleanExtra("exit", false)) 
    finish(); //This will finish your main activity 
+0

並且您在活動中的哪個位置放置了該代碼? (這是最相關的部分) – keyser

+0

你可以把它放在任何按鈕,如退出 – user1954492

+0

它工作與否 – user1954492

相關問題