再议Android2.2应用完全退出
在查找了很多资料和长期的实践之后。
总结出了一套确实可行的Android2.2完全退出应用的方法。
先说明一下,我需要达到的效果:
1,所有Activity被销毁。
2,Application被销毁。
3,退回手机桌面。
4,再次进入系统时,必须由统一的入口进入,完成程序必要的初始化操作。
开始正文,按顺序讲解需要实现代码
1,自定义Application,并在Manifest.xml中注册使用。
/** * 完全退出本应用程序 * * @author ashtray * @creaetime 2011-8-26 上午11:21:29 * @param app */ public static void exit(CustomApplication app) { /** 执行完全退出程序的操作 */ // 清除所有已创建的Activity app.removeAll(); System.gc(); // 跳转至home界面 Intent home = new Intent(Intent.ACTION_MAIN); home.addCategory(Intent.CATEGORY_HOME); home.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); app.getApplicationContext().startActivity(home); // 销毁程序进程,并退出 Process.killProcess(Process.myPid()); System.exit(10); }