其实就是一个简单的单例模式加activity数组,建一个activity数组,记录下每一个打开的activity,然后在退出应用时,全部finish()
public class MyApplication extends Application{ private static MyApplication instance; private List<Activity> activitylist=new LinkedList<Activity>(); //单例模式获取唯一的MyApplication实例 public static MyApplication getInstance() { if(null==instance) { instance=new MyApplication(); } return instance; } //添加activity容器中 public void AddAcitvity(Activity activity) { activitylist.add(activity); } public void exit() { for(Activity ac:activitylist) { ac.finish(); } System.exit(0); } }
在每一个Activity调用
//记录Activity
MyApplication.getInstance().AddAcitvity(this);
在任何activtiy想要退出应用时调用
MyApplication.getInstance().exit();
简单,实用,很好理解的推出应用的方法