androidApp的完全退出

思路:搜集整个工程所有的activity,通过循环把工程中所有的activity都关闭。

搜集工程中的activity,可以由单例模式实现,

[java]  view plain copy
  1. import java.util.LinkedList;  
  2. import java.util.List;  
  3.   
  4. import android.app.Activity;  
  5. import android.app.Application;  
  6.   
  7. //实现Activity退出  
  8. public class MyApplication extends Application{  
  9.     private List<Activity> activityList = new LinkedList<Activity>();  
  10.     private static MyApplication instance;  
  11.       
  12.     private MyApplication(){  
  13.           
  14.     }  
  15.       
  16.     //单例实现返回MyApplication实例  
  17.     public static MyApplication getInstance(){  
  18.         if(null == instance){  
  19.             instance = new MyApplication();  
  20.         }  
  21.         return instance;  
  22.     }  
  23.       
  24.     //Activity加入到List中  
  25.     public void addActivity(Activity activity){  
  26.         activityList.add(activity);  
  27.     }  
  28.       
  29.     //遍历每个Activity退出  
  30.     public void exit(){  
  31.         for(Activity activity:activityList){  
  32.             activity.finish();  
  33.         }  
  34.         System.exit(0);  
  35.     }  
  36. }  

在工程里每个Activity的onCreate()方法里添加此Activity到MyApplication对象实例容器中,

MyApplication.getInstance().addActivity(this);

在需要结束所有Activity的时候调用

MyApplication.getInstance().exit();

就可以了。

你可能感兴趣的:(android,退出app)