Android 退出程序时关闭所有的activity的几种方法

来源:互联网 发布:pplive网络电视2015 编辑:程序博客网 时间:2024/06/15 07:34

1、描述

如果目前界面还停留在之前的界面上,会法相当要退出程序是非常不方便的,Home键只能把程序挂起,并没有退出程序。解决这个有几个方法可以进行考虑

2、第一种方法


使用一个专门的集合类对所有的activity进行管理
pubic class ActivityCollector{    public static List<Activity> activities = new ArraryList<Activity>();    public static void addActivity(Activity activity){        activities.add(activity);    }    public static void removeActivity(Activity activity){        activities.remove(activity); }    public static void finishAll(){        for(Activity activity : activities){            if(!activity.isFinishing()){                activity.finish();            }        }    }}

在每个Activity的OnCreate方法当中该Activity加入到List当中,在onDestory当中异常,若要关闭所有的则执行finishAll即可。

public class BaseActivity extends Activity{    @Override    protected void onCreate(Bundle saveInstanceState){        super.onCreate(saveInStanceState);        Log.d("BaseActivity",getClass.getSimpleName());        ActivityCollector.addActivity(this);//添加进入    }    @Override    protected void onDestory(){        super.onDestory();        ActivityCollector.removeActivity(this);//移除    }}

3、第二种方法

在每个Activity当中使用广播接收器,在关闭程序时发送全部本地广播,让每个Activity的自行关闭

4、未完待续

0 0
原创粉丝点击