ANDROID 应用退出
2013-12-13 09:42
218 查看
在android中finish()和system(0)都只能退出单个activity。杀进程等的等方式都不行~~~
解决问题:
在针对 多activity中退出整个程序,例如从A->B->C->D,这时我需要从D直接退出程序。
我们知道Android的窗口类提供了历史栈,我们可以通过stack的原理来巧妙的实现,这里我们在D窗口打开A窗口时在Intent中直接加入标志Intent.FLAG_ACTIVITY_CLEAR_TOP,再次开启A时将会清除该进程空间的所有Activity。
在D中使用下面的代码:
然后在A中加入代码
注意 A activity必须是单列的
因此A的Manifest.xml配置成android:launchMode="singleTop"
解决问题:
在针对 多activity中退出整个程序,例如从A->B->C->D,这时我需要从D直接退出程序。
我们知道Android的窗口类提供了历史栈,我们可以通过stack的原理来巧妙的实现,这里我们在D窗口打开A窗口时在Intent中直接加入标志Intent.FLAG_ACTIVITY_CLEAR_TOP,再次开启A时将会清除该进程空间的所有Activity。
在D中使用下面的代码:
Intent intent = new Intent(); intent.setClass(D.this, A.class); intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); //注意本行的FLAG设置 startActivity(intent); finish();
然后在A中加入代码
Override protected void onNewIntent(Intent intent) { // TODO Auto-generated method stub super.onNewIntent(intent); //退出 if ((Intent.FLAG_ACTIVITY_CLEAR_TOP & intent.getFlags()) != 0) { finish(); } }
注意 A activity必须是单列的
因此A的Manifest.xml配置成android:launchMode="singleTop"
相关文章推荐
- Android应用下载安装Home键退出,再进 应用会重启问题解决
- android之完美应用退出
- Android应用中,退出activity时对一些资源以及状态的操作保存,可以在生命周期的哪个函数中进行?
- Android开发之退出应用
- Android中双击返回键退出应用
- Android新建.Java,更改manifest.xml后打开应用,提示“停止运行”并强制退出原因
- React native android 再按一次退出应用
- Android中包含多个Activity的应用退出按钮实现
- android在任何一个界面退出此应用
- Android项目中的双击退出应用
- Android实现首次点击返回键提示信息,第二次点击退出应用
- Android 记录Acitvity方法完全退出应用
- Android学习 - 退出整个应用方法
- Android 如何在自己的应用中模拟Home键(也就是应用不退出)
- Android 应用首页按返回不退出应用
- Android利用activity启动模式退出整个应用
- 在Android应用内部,完全退出应用
- Android应用退出登录的实现方法
- Android退出应用最优雅的方式
- Android应用开发完全退出程序的通用方法