ANDROID 完美退出APP的实例代码

时间:2023-04-27 13:03:06 

大家都知道 Android 的 Activity 是存着历史栈的,比如从 A -> B -> C,C 完成 finish 后回到 B,把所有的Activity 都 finish了,程序就自然退出了。 当然在 finish 的同时也需要是否自己程序的其他资源。所以需要想个办法把 Activity 给存起来。然后在程序退出的地方调用它们的 finish()方法。

使用全局变量。对了,第一个想到的就是继承 Application,代码入下:


public class AgentApplication extends Application { 

    private List<Activity> activities = new ArrayList<Activity>(); 

        public void addActivity(Activity activity) { 
            activities.add(activity); 
        } 

        @Override 
        public void onTerminate() { 
            super.onTerminate(); 

            for (Activity activity : activities) { 
                activity.finish(); 
            } 

            onDestroy(); 

            System.exit(0); 
        } 
    }


然后在 Activity  onCreate 的时候来调用  addActivity (),有人可能想到这个Application需要在所有的 Activity  onCreate的时候都使用,需要做一个单例实例。其实根本不需要。在 Activity 中使用  this.getApplication() 就可以了。

最后在你需要推出程序的地方调用 application.onTerminate() 就可以了。记住:super.onTerminate() 必须调用,代码中的 onDestroy()是我自己的释放其他资源的方法,不是系统的。

运行以上代码后,在LogCat 中会出现一行提示:
Process  包名 (pid  xxxxx)  has died.  证明你的程序退出了。

标签:ANDROID,退出,APP
0
投稿

猜你喜欢

  • 深入解析C#设计模式中对桥接模式的具体运用

    2023-11-08 21:53:06
  • C#检测上传文件真正类型的方法

    2021-10-28 11:32:59
  • 优化MyBatis配置文件中的配置详解

    2023-11-10 14:03:51
  • Android基于ListView实现类似Market分页加载效果示例

    2021-10-01 10:44:32
  • WPF在VisualTree上增加Visual

    2023-03-20 00:06:47
  • C#多线程系列之async和await用法详解

    2021-05-28 18:19:08
  • C#遍历文件夹后上传文件夹中所有文件错误案例分析

    2022-11-03 09:28:27
  • 关于Unsupported major.minor version 49.0的错误解决办法

    2023-06-04 22:57:44
  • SpringBoot使用邮箱发送验证码实现注册功能

    2022-03-30 10:13:36
  • 详解WPF如何使用必应地图控件

    2021-07-29 19:01:27
  • Android实战教程第七篇之如何在内存中存储用户名和密码

    2021-07-15 15:43:14
  • spring boot springMVC扩展配置实现解析

    2023-11-25 10:32:53
  • C#如何解析http报文

    2022-11-22 23:20:56
  • 浅谈shiro的SecurityManager类结构

    2022-08-25 14:13:32
  • Java中synchronized的几种使用方法

    2023-06-19 16:33:28
  • C#异步编程之async/await详解

    2022-10-08 02:50:07
  • Android 仿支付宝中的余额宝收益进度条

    2022-11-23 03:58:33
  • .net文件上传时实现通过文件头确认文件类型的方法

    2021-08-01 09:05:32
  • Java字节流和字符流总结IO流!

    2023-10-21 13:06:02
  • spring boot 图片上传与显示功能实例详解

    2021-07-02 09:46:02
  • asp之家 软件编程 m.aspxhome.com