安卓如何实现所有Activity全部销毁
来源:互联网 发布:js数组遍历下标 编辑:程序博客网 时间:2024/06/05 01:56
在Android中,如果想退出Android程序,一般都是调用finish()、System.exit(0)、android.os.Process.killProcess(android.os.Process.myPid())等方法来实现退出程序功能,可是在实际开发中,并不能达到完全退出应用程序的效果,这是因为调用finish()、System.exit(0)、android.os.Process.killProcess(android.os.Process.myPid())只能杀死当前的activity,并不能杀死所有的activity,为了完美达到此效果,接下来通过一个案例实现:
一、使用单例模式创建一个Activity管理对象,该对象中有一个Activity容器(具体实现自己处理,使用LinkedList等)专门负责存储新开启的每一个Activity,并且容易理解、易于操作,非常不错!
MyApplication类(储存每一个Activity,并实现关闭所有Activity的操作
package com.hrtx.dd.activity;import java.util.LinkedList;import java.util.List;import android.app.Activity;import android.app.Application;public class MyApplication extends Application {private List<Activity> activitys = null;private static MyApplication instance;private MyApplication() {activitys = new LinkedList<Activity>();}/** * 单例模式中获取唯一的MyApplication实例 * * @return */public static MyApplication getInstance() {if (null == instance) {instance = new MyApplication();}return instance;}// 添加Activity到容器中public void addActivity(Activity activity) {if (activitys != null && activitys.size() > 0) {if(!activitys.contains(activity)){activitys.add(activity);}}else{activitys.add(activity);}}// 遍历所有Activity并finishpublic void exit() {if (activitys != null && activitys.size() > 0) {for (Activity activity : activitys) {activity.finish();}}System.exit(0);}}
二、在每一个Activity中的onCreate方法里添加该Activity到MyApplication对象实例容器中
MyApplication.getInstance().addActivity(this);
三、在需要结束所有Activity的时候调用exit方法
MyApplication.getInstance().exit();
1 0
- 安卓如何实现所有Activity全部销毁
- 安卓实现所有activity全部销毁
- 在安卓开发中实现退出App时销毁所有Activity
- 销毁全部Activity
- 安卓学习之--如何关闭所有的activity
- 跳转一个Activity之后如何将栈内其他的Activity全部都销毁
- android退出,销毁所有activity
- 一键销毁所有Activity
- (安卓特效) 侧滑销毁Activity
- 【Android】安卓开发实战之销毁之前的全部活动
- 如何销毁Activity,和如何一次销毁多个activity
- Android之Activity(六):如何一键销毁所有活动?
- Android学习之销毁所有的Activity
- android退出应用销毁所有的activity
- 安卓开发之如何利用Intent对象,实现Activity和另一个Activity之间的跳转
- 将所有的Activity全部finish掉
- [Android实例] 安卓线程关闭,销毁activity时注意关闭线程
- Activity销毁时如何保存Fragment状态
- Spring框架学习【基础知识】
- 解决打开Excel时提示“您尝试打开的文件.xls的格式与文件扩展名指定的格式不一致
- 算法的重要性-The Importance of Algorithm()
- JS控制表格某行隐藏或显示后页面布局错乱
- Virtual Box + Oracle11gR2 安装手册+安装脚本+视频教程
- 安卓如何实现所有Activity全部销毁
- 51单片机与PC进行串口通信
- 今日写mfc程序中关于控件Paint的心得
- 制作HTML播放器代码及方法
- provent from sleep?
- Linux C 多线程互斥锁及线程同步问题
- python中if __name__ == "__main__":用法解析
- 解释器的原则(Recipe)
- JDK的安装和环境变量的设置