Android開發(二十六)——Application

applicationjava

package com.lgaoxiao.application;

import java.util.LinkedList;
import java.util.List;
import android.app.Activity;
import android.app.Application;

/**
 * 一個類 用來結束全部後臺 activity
 * 
 * @author Administrator
 * @see http://java--hhf.iteye.com/blog/1826880
 * 
 */
public class SysApplication extends Application {
    // 運用list來保存們每個activity是關鍵
    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);
    }

    // 關閉每個list內的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();
    }
}
相關文章
相關標籤/搜索