Android 完全退出应用程序并释放资源
Android 开发中想要完全退出系统,并释放资源,之前找了很多方法。都不可取,也很麻烦。最近又google了一下,发现一个方法很简单。大致说一下:
一、首先说一下finish();
finish();只能退出当前Activity 不能把Android app所有Activity退出。使用方式为:
MainActivity.this.finish();
二、退出整个应用程序并释放资源
1)新建SysApplication类,具体如下
package com.hbjr.lims;
import java.util.LinkedList;
import java.util.List;
import android.app.Activity;
import android.app.Application;
public class SysApplication extends Application {//存放所有Activity 方便退出系统
// 用于存放当前所有的Activity
private List<Activity> mList = new LinkedList<Activity>();
// SysApplication类型的静态常量,用于在某一个Acitivty中
//获取instance并调用SysApplication的类方法
private static SysApplication instance;
private SysApplication() {
}
// 静态方法,用于获取静态常量 instance
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);
}
}
public void onLowMemory() {
super.onLowMemory();
System.gc();
}
}
2)具体使用的时候,每创建一个Activity,就会添加到 List 中,所以在每个Activity的OnCrate方法里面调用如下:
SysApplication.getInstance().addActivity(this);
3)在想要退出应用的地方调用如下:
SysApplication.getInstance().exit();

浙公网安备 33010602011771号