Android如何關閉一個Application的所有Activity?

謝謝。

試用了另外一種方法達到了目的。

例如有ABCD這四個Activity,A是最開始啓動的。然後從BCD任何一個按返回鍵想退出整個App,需要兩部可以達成:

1,在BCD的onKeyUp()事件中使用如下代碼:

@Override
public boolean onKeyUp(int keyCode, KeyEvent event) {
    switch(keyCode){
    case KeyEvent.KEYCODE_BACK:{
        Intent it = new Intent(getApplicationContext(), A.class);
        it.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
        it.putExtra("EXIT", true);
        
        startActivity(it); //啓動A的時候,關閉所有在堆棧中在A上方的Activity,然後根據傳過去的EXIT
值判斷是否關閉
        return true;
    }
    
    
    }///:~switch
    
    return super.onKeyUp(keyCode, event);
}

 

2,在A的onCreate()函數中,添加如下判斷:

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    
    //Finish all the acitivities of the application
    if(getIntent().getBooleanExtra("EXIT", false)){//根據EXIT值關閉A
        finish();
        return;
    }
    
    setContentView(R.layout.activity_main);
}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章