问题描述

退出流程:
子页面——>主页面——>退出登录——>登录页面——>完全退出
每个页面在关闭的时候都写了finish(),但还是会出现退出不完全的现象,例如:
子页面——>主页面——>退出登录——>登录页面——>主页面——>退出登录——>登录页面——>完全退出
由于主页面和登录页面重复显示,所以在登录页面退出时加了System.exit(0);,想象的流程应该是退出登录后,finish登录页面,系统退出。
可现实总是残酷的,重复退出的现象还是会出现。试了很多方法,终于能彻底退出了,而且很容易上手。

基本思路

通过一个Activity的集合管理所有创建的页面,每次新创建一个页面就将该页面添加到List中,在退出的时候,调用集合,将集合内的窗口依次全部关闭。这样就不会有漏网的页面了。

实现步骤

1.新建ExitApplication类,集中管理activity

package com.assets.activities;import java.util.ArrayList;
import java.util.List;
import android.app.Activity;
import android.app.Application;
import android.content.Context;public class ExitApplication extends Application {//用来存储所有创建的activityprivate List<Activity> list = new ArrayList<Activity>();private static ExitApplication exit;private ExitApplication() {}public static ExitApplication getInstance() {if (null == exit) {exit = new ExitApplication();}return exit;}//添加新创建的activitypublic void addActivity(Activity activity) {list.add(activity);}//关闭所有activity,退出程序public void exit(Context context) {for (Activity activity : list) {activity.finish();}System.exit(0);}
}

2.在每一个activity创建时,都加入list管理。

3.在要彻底退出的位置调用exit方法。我的程序加在登录页面了,登录界面点击返回键,调用exit方法。

ExitApplication.getInstance().exit(this);

Android彻底退出,解决应用程序退出不完全相关推荐

  1. Android 如何退出整个应用程序?

    转载文章:http://blog.csdn.net/sunnyfans/article/details/7688092 Android 怎么退出整个应用程序? 我们在写android应用程序时,经常会 ...

  2. Android项目实战(二):安卓应用程序退出的三种方法

    现在的APP退出的时候都不是让用户点击了"后退键"就退出.防止用户点错了后退键而造成的用户体检不好. 一年前搞的Demo代码不见了,重新写下就当是复习和以后直接拿来用把 目前流行的 ...

  3. c语言libjpeg处理图像,解决使用 libjpeg 保存图片时因磁盘写入失败导致程序退出的有关问题...

    0. libjpeg 介绍 libjpeg 是一个完全用C语言编写的库,包含了被广泛使用的JPEG解码.JPEG编码和其他的JPEG功能的实现.这个库由独立JPEG工作组维护. 参考:http://z ...

  4. Android 怎么退出整个应用程序?

    Android 怎么退出整个应用程序? 我们在写android应用程序时,经常会遇到想退出当前Acitivity,或者直接退出应用程序.我之前的一般操作是按返回键,或者直接按home键直接返回,其实这 ...

  5. android程序退出时回调,关于android:通过刷卡杀死App时的回调

    我有一个涉及导航的应用程序. 如果用户启动导航,则会创建一种"navigationLifecycleManager".它存储在应用程序实例中,以便在配置更改,活动等之间切换时幸免于 ...

  6. android手机 运行java程序退出_手机为什么程序退出还在运行怎么办

    1. 为什么手机程序后台关闭了还会自动再运行 安卓android后台的软件自动启动程序 - 使用android手机必读(精华中的精华)2011-08-25 16:06不用在意剩余内存的大小,其实很多人 ...

  7. 20_Android中apk安装器,通过WebView来load进一个页面,Android通知,程序退出自动杀死进程,通过输入包名的方式杀死进程

     场景:实现安装一个apk应用程序的过程.界面如下: 编写如下应用,应用结构如下: <RelativeLayout xmlns:android="http://schemas.an ...

  8. Android 关于长按back键退出应用程序的实现

    Android 关于长按back键退出应用程序的实现 最近在做一个Android上的应用,碰到一个问题就是如何实现长按back键退出应用程序.在网上查找了很多资料,发现几乎没有这样的实现,大部分在处理 ...

  9. android禁用应用组件,Android彻底退出(关闭)应用程序.docx

    Android彻底退出(关闭)应用程序.docx 做android开发时,发现一个关于android退出时不能彻底关闭的问题,比如:一个程序里new?出了N多个Thread,这样在退出程序的可能不能完 ...

最新文章

  1. [转] vuewebpack多页面配置
  2. 神鬼传奇小技巧:教你如何修改自己想要的时装
  3. WMI问题全解(Windows管理规范)
  4. 上海证券携手神策数据,引领普惠金融创新升级
  5. wxWidgets:wxStdInputStreamBuffer类用法
  6. 分类素材(part6)--大话Python机器学习(下)
  7. 【C++深度剖析教程10】C++中的字符串类
  8. css3hlsa,CSS3颜色,文字,文本部分常用属性
  9. JAVA50道基础编程题
  10. 虚拟机修改hosts文件
  11. 软考:软件设计师(历年真题汇总)|希赛网
  12. 【个人博客网页模板】
  13. 校验码——CRC循环冗余校验码,码距,例题
  14. Qt/Windows 获取 MITSUBISHI P95DW 打印机状态信息
  15. 线程的stop方法和interrupt方法
  16. 【VirtualBoxUbuntu】VirtualBox中Ubuntu虚拟机磁盘碎片整理并压缩磁盘空间
  17. [Android开发学iOS系列] ViewController - 圣骑士wind - 博客园
  18. 孔雀东南飞$追加x5淘宝JS
  19. AI小程序开放2个超级入口,还能分享朋友圈
  20. 信捷PLC中Y0用C语言怎么表示,信捷PLC

热门文章

  1. 万字详解!Git 入门最佳实践
  2. CSS预处理器 -- stylus 、sass、less
  3. latex极限符号怎么打_LaTeX常用篇(二)---上下标/分式/根式/求和/连乘/极限/积分/希腊字母...
  4. java强制类型转换(java强制类型转换有哪些)
  5. C#RTSP通信2:RTSP语音广播+语音对讲(WinForm版本)
  6. WebAssembly 正在吞噬数据库!
  7. UserScripts Safari 苹果iOS上特别好用且免费的脚本插件,五分钟学会
  8. Java中static关键字的作用与用法
  9. (转)WEB专用服务器的安全管理
  10. 英语单词listen、hear、sound的区别