Android 完全退出程序
2011-03-28 10:22
281 查看
1.使用ActivityManager彻底退出程序
(1) android 2.2之前的room用:
需要声明权限
这种方法会终止一切和这个程序包关联的,所有共享同一uid的process被kill,所有 的activity会被removed所有创建的服务会停止,还会发一个广播
(2) android 2.2之后的room用:(2.2测试不能用)
需要声明权限
测试可用:
2. 声明一个静态变量,根据变量值在activity ,onResume方法里逐个调用finish方法。
代码:
本文出自 “学习笔记” 博客,请务必保留此出处http://maxuefeng.blog.51cto.com/1876326/528561
(1) android 2.2之前的room用:
ActivityManager manager = (ActivityManager)getSystemService(ACTIVITY_SERVICE); manager.restartPackage(getPackageName());
需要声明权限
<uses-permission android:name="android.permission.RESTART_PACKAGES"/>
这种方法会终止一切和这个程序包关联的,所有共享同一uid的process被kill,所有 的activity会被removed所有创建的服务会停止,还会发一个广播
Intent.ACTION_PACKAGE_RESTARTED导致所有注册alarms 被stopped, notifications 被removed。
(2) android 2.2之后的room用:(2.2测试不能用)
ActivityManager am = (ActivityManager) getSystemService(ACTIVITY_SERVICE); am.killBackgroundProcesses("cn.com.android123.cwj"); // API Level至少为8才能使用
需要声明权限
<uses-permission android:name="android.permission.KILL_BACKGROUND_PROCESSES"/>
测试可用:
Intent startMain = new Intent(Intent.ACTION_MAIN); startMain.addCategory(Intent.CATEGORY_HOME); startMain.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); startActivity(startMain); System.exit(0);
2. 声明一个静态变量,根据变量值在activity ,onResume方法里逐个调用finish方法。
代码:
@Override protected void onResume() { if(IS_EXIT){ //静态变量,标识是否完全退出程序 finish(); }else{ ... ... } super.onResume(); }
本文出自 “学习笔记” 博客,请务必保留此出处http://maxuefeng.blog.51cto.com/1876326/528561
相关文章推荐
- Android 2.2关闭所有Activity完全退出程序方法
- Android开发中完全退出程序的三种方法
- Android开发中完全退出程序的三种方法
- Android系统中程序完全退出的三种方法
- 关于程序退出无法关闭所有界面问题 通过广播使Android程序完全退出
- Android程序完全退出的三种方法
- Android程序完全退出的三种方法
- Android完全退出程序的解决方案
- Android程序完全退出的三种方法
- Android怎样才能完全退出程序
- Android程序完全退出的三种方法
- Android企业级程序完全退出的解决方案
- android中完全退出程序的四种办法
- Android程序完全退出的三种方法
- Android中退出程序的提示框及完全退出
- android完全退出程序的几种方式
- android程序完全退出
- Android 2.2完全退出程序, 使用广播机制
- android如何完全退出程序
- Android 实现程序完全退出