读书人

Android 如何退出整个应用程序

发布时间: 2012-09-23 10:28:10 作者: rapoo

Android 怎么退出整个应用程序?

 
在开发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方法。

1楼su1216昨天 15:10
finish页面并不会结束其中开启的线程

读书人网 >Android

热点推荐