android 如何退出整個系統

方法一:


package com.example.startotherapp;

import java.util.LinkedList;
import java.util.List;


import android.app.Activity;
import android.app.Application;


public class MyApplication extends Application{

  private List<Activity> mList = new LinkedList<Activity>(); 
   private static MyApplication instance; 
 
   private MyApplication() {   
   } 
   public synchronized static MyApplication getInstance() { 
       if (null == instance) { 
           instance = new MyApplication(); 
       } 
       return instance; 
   } 
   // add Activity  
   public void addActivity(Activity activity) { 
       mList.add(activity); 
   } 

  //退出整個應用時調用

   public void exit() { 
       try { 
           for (Activity activity : mList) { 
               if (activity != null) 
                   activity.finish(); 
           } 
       } catch (Exception e) { 
           e.printStackTrace(); 
       } finally { 
           System.exit(0); 
       } 
   } 
   
   
    /**
     * 內存不足時候使用
     */
   public void onLowMemory() { 
       super.onLowMemory();     
       System.gc(); 
   } 


}


註釋: 原理在創建每個activity的時候我們需要MyApplication.getIntent().add(this);這裏用到的技術有單例和一個list收集每一個activity。


方法二:

    Intent startMain = new Intent(Intent.ACTION_MAIN);
          startMain.addCategory(Intent.CATEGORY_HOME);
          startMain.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
          startActivity(startMain);

System.exit(0);

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章