后面才发现的这个方法。思路也很简单,回想自己当初为了解决这个问题时的苦苦寻觅,遂决定将其共享,供遇到此问题人士作为参考。
啰嗦够了,上思路:添加一个全局变量作为程序退出的标记(boolean类型),当需要退出程序时置为true,程序中每个Activity的onStart方法中对该变量进行判断,为true就结束自己。
使用Application来保存一个全局变量isProgramExit。(对Application使用不熟悉的话查看相关资料)
代码如下:
public class MyApplication extendsApplication {
// 程序退出标记
private static boolean isProgramExit = false;
public void setExit(booleanexit) {
isProgramExit= exit;
}
public booleanisExit() {
return isProgramExit;
}
}
在你退出时需要结束的每个 Activity 的 onStart 方法加上以下代码:
代码如下:
protected voidonStart() {
super.onStart();
MyApplication mApp = (MyApplication)getApplication();
if(mApp.isExit()) {
finish();
}
}
这样C结束了自己,按照流程会回到B,然后B中会进行判断,因为退出条件满足,结束自己;再回到A,同样也结束……
可以看到,这种方法并不高明,甚至有些复杂,因为要在每个Activity的onStart中都加上判断。但不可否认的是这种方法却是绝对有效的,不管你的程序中Activity如何跳转来跳转去,只要一声令下,通通结束,屡试不爽。
所以,有遇到程序退出问题的朋友可以作为参考。 您可能感兴趣的文章:Android 双击返回键退出程序的方法总结Android开发退出程序的方法汇总android中实现完全退出程序方法(退出所有activity)Android双击返回键退出程序的实现方法Android 再按一次退出程序的实现方法Android 退出程序的若干方法总结Android 再按一次返回键退出程序实现思路android 退出程序解决内存释放的问题Android 实现按两次返回键退出程序(两种方法)