在Android开发中,如何结束整个应用程序

2018-07-20    来源:open-open

容器云强势上线!快速搭建集群,上万Linux镜像随意使用

解决思路:

1、建立List集合,将所有的Acitivty 都存进,集合里——private List<Activity> activityList = new LinkedList<Activity>();

2、结束整个应用程序时,将遍历集合,将Activity 逐个 kill 。 

下面是具体实现代码:

  
import java.util.LinkedList;  
import java.util.List;  
  
import android.app.Activity;  
import android.app.Application;  
  
public class ActivityManager extends Application {  
    //建立链表集合  
    private List<Activity> activityList = new LinkedList<Activity>();  
      
    //用单例模式,保证,这个ActivityManager 在整个应用中只有一个  
    private static ActivityManager instance;  
  
    private ActivityManager() {  
  
    }  
  
    public static ActivityManager getInstance() {  
        if (instance == null) {  
            instance = new ActivityManager();  
        }  
        return instance;  
    }  
  
    //向链表中,添加Activity  
    public void addActivity(Activity activity) {  
        activityList.add(activity);  
    }  
  
    //结束整个应用程序  
    public void exit() {  
          
        //遍历 链表,依次杀掉各个Activity  
        for (Activity activity : activityList) {  
            if (!activity.isFinishing()) {  
                activity.finish();  
            }  
        }  
        //杀掉,这个应用程序的进程,释放 内存  
        int id = android.os.Process.myPid();  
        if (id != 0) {  
            android.os.Process.killProcess(id);  
        }  
    }  
}  

具体使用的时候,需要,在每一个Activity中,获取 ActivityManager 的实例,然后,将Activity,添加到,List 中。


1、获取 ActivityManager 的实例对象:

ActivityManager exitM = ActivityManager.getInstance();

2、添加各个 Activity

exitM.addActivity(MainActivity.this);


关闭整个应用程序的时候,只需要,最后一句:

exitM.exit(); 

便可 大功告成!

标签: 代码

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点!
本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。

上一篇:C实现生成n个元素的全排列

下一篇:Java随机生成前N个不重复的整数