android 如何做到完全退出应用程序
2014-02-25 10:20
363 查看
当我在网上找“android 如何完全退出应用程序时”十有八九都是
[java]
android.os.Process.killProcess(android.os.Process.myPid());
又或者是
[java]
System.exit(0);
但这些未必对每一个应用程序都有效果。
当你的应用程序中有很多Activity ,有很多Service,有很多线程,你就不要指望能通过以上方法来完全关闭你的进程了,当然还有其他几种方法我没有试,
但是估计都不行。
原因就在于android应用程序的管理机制限制的,包括service在内都是关闭后会在后台自启动的。
废话不多说,解决办法有两步
1.看下AndroidManifest.xml里面注册的广播,如果应用程序被kill掉后接受到此类广播还是会restart的
2.在
[java]
android.os.Process.killProcess(android.os.Process.myPid());
后加入如下代码
[java] www.2cto.com
ActivityManager activityMgr= (ActivityManager) getSystemService(ACTIVITY_SERVICE );
activityMgr.killBackgroundProcesses(getPackageName());
同时AndroidManifest.xml里面加入权限
[html]
<uses-permission android:name="android.permission.KILL_BACKGROUND_PROCESSES" />
当我在网上找“android 如何完全退出应用程序时”十有八九都是
[java]
android.os.Process.killProcess(android.os.Process.myPid());
又或者是
[java]
System.exit(0);
但这些未必对每一个应用程序都有效果。
当你的应用程序中有很多Activity ,有很多Service,有很多线程,你就不要指望能通过以上方法来完全关闭你的进程了,当然还有其他几种方法我没有试,
但是估计都不行。
原因就在于android应用程序的管理机制限制的,包括service在内都是关闭后会在后台自启动的。
废话不多说,解决办法有两步
1.看下AndroidManifest.xml里面注册的广播,如果应用程序被kill掉后接受到此类广播还是会restart的
2.在
[java]
android.os.Process.killProcess(android.os.Process.myPid());
后加入如下代码
[java] www.2cto.com
ActivityManager activityMgr= (ActivityManager) getSystemService(ACTIVITY_SERVICE );
activityMgr.killBackgroundProcesses(getPackageName());
同时AndroidManifest.xml里面加入权限
[html]
<uses-permission android:name="android.permission.KILL_BACKGROUND_PROCESSES" />
相关文章推荐
- android 如何做到完全退出应用程序
- android 如何做到完全退出应用程序
- android开发之应用程序如何完全退出
- 如何完全退出单例模式下的android应用程序,非常好用
- 如何完全退出单例模式下的android应用程序,非常好用
- 如何完全退出android应用程序
- 如何完全退出android应用程序
- android如何完全退出应用程序
- android完全退出应用程序的三种方式
- android中完全退出当前应用程序的四种方法
- Android安卓完全退出关闭应用程序
- 【移动开发】Android应用程序完全退出
- android 完全退出应用程序
- android完全退出应用程序
- Android完全退出应用程序
- Android完全退出应用程序的方法
- Android 完全退出应用程序
- Android程序如何在任意处完全退出应用
- android 完全退出应用程序实现代码
- 【转】Android应用程序完全退出