在做android开发时,时常会发生在activity之间跳转后退出时会跳转回某个Activity的情况,通常是在退出程序时发生,导致不能完全退出程序。我网上搜了一下,有说法说这是Android系统activity堆栈的结果。有人提出了一些解决方法,我挑了一个最方便最通用的实现了一下,将所有建立的activity加进一个list,在需要程序结束时,finish所有list中的acitivity,共享出来,看下面代码。

//建立一个public static的list用来放activity
public static List activityList = new ArrayList();

//在每个activity建立的时候将这个activity加进list
main.activityList.add(main.this);

//finish所有list中的activity
public static void killall(){
    int siz=activityList.size();
    for(int i=0;i<siz;i++){
        if(activityList.get(i)!=null){
            activityList.get(i).finish();
        }
    }
}