Android经典完美退出方法
Android经典完美退出方法,使用单例模式创建一个Activity管理对象,该对象中有一个Activity容器(具体实现自己处理,使用LinkedList等)专门负责存储新开启的每一个Activity,并且容易理解、易于操作,非常不错!
AppUtils类(储存每一个Activity,并实现关闭所有Activity的操作)
/* * To change this template, choose Tools | Templates * and open the template in the editor. */ package com.cpic.jscx.android.utils; import android.app.Activity; import android.app.Application; import java.util.LinkedList; import java.util.List; /** * * @author user 何问起 hovertree.com */ public class AppUtils extends Application{ private List<Activity> activityList = new LinkedList<Activity>(); private static AppUtils instance; private AppUtils() { } //单例模式中获取唯一的app实例 public static AppUtils getInstance() { if(null == instance) { instance = new AppUtils(); } return instance; } //添加Activity到容器中 何问起 hovertree.com public void addActivity(Activity activity) { activityList.add(activity); } //遍历所有Activity并finish public void exit() { for(Activity activity:activityList) { activity.finish(); } System.exit(0); } }
在每一个Activity中的onCreate方法里添加该Activity到AppUtils对象实例容器中
AppUtils.getInstance().addActivity(this);
public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); AppUtils.getInstance().addActivity(this); setContentView(R.layout.main); findViews(); } /* 何问起 hovertree.com */
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步