面试的时候遇到面试官问:如何退出app,退出一个app的时候,activity的生命周期是怎么走的?
先来看第一个问题:如何退出APP?
1.System.exit(0);这种方法是通过关闭虚拟机来退出当前app的,简单粗暴,在我刚参加工作时采用的就是这种方式
2.自定义Application,并创建一个Activity的集合,退出时,关闭所有的Activity即可(此种方法更为常用)
2.1自定义Application,如下:
public class MyApp extends Application{ private List<AppCompatActivity> activities; @Override public void onCreate() { super.onCreate(); activities = new ArrayList<>(); } // 加入Activity public void addActivity(AppCompatActivity activity){ if (!activities.contains(activity)){ activities.add(activity); } } // 删除单个Activity public void delActivity(AppCompatActivity activity){ if (activities.contains(activity)){ activi