资讯专栏INFORMATION COLUMN

Android Activity整体管理和关闭工具类封装

YacaToy / 350人阅读

摘要:如何彻底退出程序,在任意位置退出程序,如何管理当前的运行栈,知道的堆栈结构等,本文封装了一个管理类,可以方便随时退出程序。

如何彻底退出程序,在任意位置退出程序,如何管理当前的运行栈,知道activity的堆栈结构等,本文封装了一个Activity管理类,可以方便随时退出程序。

/**
 * 应用程序Activity管理类:用于Activity管理和应用程序退出
 */
public class AppManager {

    private List mActivityList = new LinkedList();
    private static AppManager instance;

    private AppManager(){}
    /**
     * 单一实例
     */
    public static AppManager getAppManager(){
        if(instance==null){
            instance=new AppManager();
        }
        return instance;
    }
    /**
     * 添加Activity到堆栈
     */
    public void addActivity(Activity activity){
        mActivityList.add(activity);
    }

    /**
     * 结束指定的Activity
     */
    public void finishActivity(Activity activity){
        if(activity!=null){
            mActivityList.remove(activity);
            activity.finish();
            activity=null;
        }
    }

    /**
     * 结束所有Activity
     */
    public void finishAllActivity(){
        while(mActivityList.size() > 0) {
            Activity activity = mActivityList.get(mActivityList.size() - 1);
            mActivityList.remove(mActivityList.size() - 1);
            activity.finish();
        }
    }
    /**
     * 退出应用程序
     */
    public void AppExit() {
        Countly.sharedInstance().onStop();
        try {
            finishAllActivity();
        } catch (Exception e) { }
    }
}

文章为原创,转载请注明出处。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/12162.html

相关文章

  • Android版本介绍 - 收藏集 - 掘金

    摘要:前言整体架构掘金概述该篇文章主要讲解的整体框架和工作流程,不会涉及到具体的实现。产品汪了解安卓的历史版本吗产品掘金最近在看的设计规范,顺便也熟悉下的版本历史。 关于 Android 7.0 适配中 FileProvider 部分的总结 - 掘金由于 Android 7.0 或更高版本的系统在国内手机市场上的占比不是很高,很多 Android 开发人员并没有做 7.0 适配工作,同时测试...

    teren 评论0 收藏0
  • Android组件化开发实践案例分享

    摘要:主工程具有和组件进行绑定和解绑的功能。如下图组件化需要考虑问题考虑的问题分而治之,并行开发,一切皆组件。引用阿里的框架,通过注解方式进行页面跳转。 目录介绍 1.为什么要组件化 1.1 为什么要组件化 1.2 现阶段遇到的问题 2.组件化的概念 2.1 什么是组件化 2.2 区分模块化与组件化 2.3 组件化优势好处 2.4 区分组件化和插件化 2.5 applicati...

    zr_hebo 评论0 收藏0
  • 2018年Android面试题含答案--适合中高级(下)

    摘要:生命周期生命周期启动方式有两种,一种是通过方式进行启动,另一种是通过方式进行启动。这种注册方式优先级较高。虚拟机运行的是字节码。一共有三种类型,分别是和。 1、Activity生命周期? onCreate() -> onStart() -> onResume() -> onPause() -> onStop() -> onDetroy() 2、Service生命周期? service ...

    DoINsiSt 评论0 收藏0
  • 2018年Android面试题含答案--适合中高级(下)

    摘要:生命周期生命周期启动方式有两种,一种是通过方式进行启动,另一种是通过方式进行启动。这种注册方式优先级较高。虚拟机运行的是字节码。一共有三种类型,分别是和。 1、Activity生命周期? onCreate() -> onStart() -> onResume() -> onPause() -> onStop() -> onDetroy() 2、Service生命周期? service ...

    tomlingtm 评论0 收藏0
  • Android优化总结

    摘要:错误使用单利在开发中单例经常需要持有对象,如果持有的对象生命周期与单例生命周期更短时,或导致无法被释放回收,则有可能造成内存泄漏。如果集合是类型的话,那内存泄漏情况就会更为严重。 目录介绍 1.OOM和崩溃优化 1.1 OOM优化 1.2 ANR优化 1.3 Crash优化 2.内存泄漏优化 2.0 动画资源未释放 2.1 错误使用单利 2.2 错误使用静态变量 2.3 ...

    sunsmell 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<