今天无意中在群里讨论起完全退出App的问题,纠结了很久这个System.exit(0)是否能退出程序的问题,

下面是群友:Jafir提供的参考资料:

http://www.cnblogs.com/lesliefang/p/3933640.html

http://yangguangfu.iteye.com/blog/1906601


另外

System.exit(0);与android.os.Process.killProcess(android.os.Process.myPid());

两个方法退出不了程序,这里感谢群友_Berial_提供的完全退出App的代码,下面分享下:

完全退出App的方法:

/** * 退出应用程序 */public void AppExit(Context context) {try {ActivityCollector.finishAll();ActivityManager activityMgr = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE);activityMgr.killBackgroundProcesses(context.getPackageName());System.exit(0);} catch (Exception ignored) {}}

附上自己写的ActivityCollector:

public class ActivityCollector {public static LinkedList<Activity> activities = new LinkedList<Activity>();public static void addActivity(Activity activity){activities.add(activity);}public static void removeActivity(Activity activity){activities.remove(activity);}public static void finishAll(){for(Activity activity:activities){if(!activity.isFinishing()){activity.finish();}}}}

好了,记录完毕~


ps:差点漏掉这ActivityCollector的用法:

我们在Activity的onCreate( )方法中调用addActivity添加Activity

在onDestory( )方法中调用removeActivity移除Activity!!!

谢谢ben0612的提醒~






更多相关文章

  1. Android(安卓)学习记录-零散知识点
  2. Android(安卓)LayoutInflater深度解析 给你带来全新的认识
  3. 《Android第一行代码》coolweather项目个人总结
  4. android Window和ViewRootImpl
  5. ActivityManagerService启动学习
  6. Android9.0 Activity启动流程分析(一)
  7. Android(安卓)Training - 网络操作(1) - 连接网络
  8. MAC OSX上SDK Manager无法下载Android(安卓)SDK5.0的解决方法
  9. [android] Activity 的生命周期 以及 横屏竖屏切换时 Activity

随机推荐

  1. ios, android 应用程序不允许锁屏
  2. Android(安卓)一次启动多个Activity (Tas
  3. Android十八章:EventBus3.0使用
  4. Android动画详解之Android动画属性和实现
  5. android JNI utils/Log.h 找不到 解决方
  6. [疑难杂症] Android(安卓)WebView 无法打
  7. 常见android应用
  8. Android(安卓)Sqlite数据库升级时注意事
  9. Android电话信息相关API
  10. Mac下编译x264 for Android