您的位置:首页 > 移动开发 > Android开发

android 使程序完全退出及退回到主界面

2015-12-16 10:38 573 查看

一、使程序完全退出

1、使用ActivityManager:

ActivityManager am = (ActivityManager)getSystemService (Context.ACTIVITY_SERVICE);
am.restartPackage(getPackageName()); //虽为 restart,但并不是重启
系统会将该包下的所有活动、服务全部杀掉,要注意加上权限
<uses-permission android:name="android.permission.RESTART_PACKAGES"/>

2、终止进程:(不推荐)

finish();
android.os.Process.killProcess(android.os.Process.myPid());
注:进程被终止时,查看一下 Log输出,ActivityManager 会抛出错误,但对用户来说,并无异常 

二、当前面有多个界面时,清除前面所有界面返回到主界面

比如MainActivity.java为程序的主界面
在manifest中设置MainActivity的启动模式为singleTask,在activity节点下加上如下:
android:launchMode="singleTask"
注意:singleTask模式的Activity不管是位于栈顶还是栈底,再次运行这个Activity时,都会destory掉它上面的Activity来保证整个栈中只有一个自己,切记切记”这点是毋庸置疑的。
比如你现在在 EActivity 与MainActivity之间有Activity B、C和D,当你需要回到MainAcitivity,并且需要销毁中间的界面时候就可以调用
startActivity(new Intent(EActivity.this,MainAcitivity.class));
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: