Android开发心得——退出整个应用
本博文欢迎转载,转载请注明来自http://www.cnblogs.com/qinxianyuzou/
相信不少Android程序员,很多时都会有想要整个应用退出的时候,但是不管是用finish还是exit(0)退出都只能退出一个Activity.于是我谷歌百度了很久,让我找到了一个方法
那就是用一个list将Activity保存起来,然后用循环一次过干掉,贴出demo
1 public class TuiChu extends Application 2 { 3 private List<Activity> mainActivity = new ArrayList<Activity>(); 4 private Activity myActivity; 5 6 public List<Activity> MainActivity() 7 { 8 return mainActivity; 9 } 10 11 public void addActivity(Activity act) 12 { 13 myActivity = act; 14 mainActivity.add(myActivity); 15 } 16 17 /** 18 * 退出的关键 19 */ 20 public void finishAll() 21 { 22 for (Activity act : mainActivity) 23 { 24 if (!act.isFinishing()) 25 { 26 act.finish(); 27 } 28 } 29 mainActivity = null; 30 // 注意,这里的exit很重要,要是没有这个的话,你的程序在第二次(偶数次)启动时必然会报错 31 System.exit(0); 32 } 33 }
接下来是这个类的用法"
1 private void 退出功能初始化() 2 { 3 TuiChu appState = (TuiChu) this.getApplication(); 4 appState.addActivity(this); 5 退出类 = (TuiChu) getApplicationContext(); 6 }
//需要退出时就调用这个finishAll方法
1 退出类.finishAll();