一、知晓当前是在哪一个活动
BaseActivity类继承Activity
package com.test.activitytest; import android.app.Activity; import android.os.Bundle; import android.util.Log; public class BaseActivity extends Activity{ @Override protected void onCreate(Bundle savedInstanceState) { // TODO Auto-generated method stub super.onCreate(savedInstanceState); Log.d("BaseActivity",getClass().getSimpleName());//输出当前实例的名字 ActivityCollertor.addActivity(this); } @Override protected void onDestroy() { // TODO Auto-generated method stub super.onDestroy(); ActivityCollertor.removeActivity(this); } }
所有的活动继承该类,在创建活动的时候,就可以通过Log来输出当前活动的名字。
二、随时随地退出程序
package com.test.activitytest; import java.util.ArrayList; import java.util.List; import android.app.Activity; public class ActivityCollertor { public static List<Activity> activities=new ArrayList<Activity>(); /** * 添加当前活动 * @param activity */ public static void addActivity(Activity activity){ activities.add(activity); } /** * 移除当前活动 * @param activity */ public static void removeActivity(Activity activity){ activities.remove(activity); } /** * 结束栈中的所有活动 */ public static void finishAll(){ for(Activity activity:activities){ if(!activity.isFinishing()){ activity.finish(); } } } }