Android 怎麼退出整個應用程式?__以及__按鍵事件捕獲的問題?

來源:互聯網
上載者:User
 
在開發Andorid程式的時候,難免會牽扯到退出整個應用程式的情況,怎麼完全退出呢?請參閱下面的關鍵代碼:
 
import java.util.LinkedList;   import java.util.List;   import Android.app.Activity;   import Android.app.AlertDialog;   import Android.app.Application;   import Android.content.DialogInterface;   import Android.content.Intent;      public class SysApplication extends Application {       private List<Activity> mList = new LinkedList<Activity>();       private static SysApplication instance;          private SysApplication() {         }          public synchronized static SysApplication getInstance() {           if (null == instance) {               instance = new SysApplication();           }           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);           }       }          @Override       public void onLowMemory() {           super.onLowMemory();               System.gc();       }      }  

在每個Activity的onCreate方法中添加類似代碼:

 

public void onCreate(Bundle savedInstanceState) {  
    super.onCreate(savedInstanceState);       
    SysApplication.getInstance().addActivity(this);  

在需要退出程式的時候,調用:

SysApplication.getInstance().exit(); 
簡而言之,通過單例模式把每個Activity 的引用添加到一個全域鏈表中,每次退出程式調用System.exit(0)時,先調用鏈表中Activity 的finish方法。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.