AndroidはすべてのActivityを閉じます
1547 ワード
/***使用方法:*1、すべてのActivityがこのbaseActivity**2を継承し、終了するときにthisを呼び出す.clossAllActivity()**/
package com.abc.util;
import android.app.Activity;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;
/**
* function: Activity
*
* Activity, Activity Activity,
* Activity , , Activity 。
*
*/
public class BaseActivity extends Activity{
public static final String ACTION_CLOSS_ACTIVITY = "com.abc.BaseActivity.finish";
private BroadcastReceiver broadcastReceiver = new BroadcastReceiver(){
@Override
public void onReceive(Context context, Intent intent) {
//
BaseActivity.this.finish();
}
};
@Override
//--activity
protected void onResume() {
super.onResume();
// activity
IntentFilter filter = new IntentFilter();
filter.addAction(ACTION_CLOSS_ACTIVITY);
this.registerReceiver(broadcastReceiver, filter);
}
//Activity has leaked IntentReceiver that was originally registered here.
//Are you missing a call to unregisterReceiver()?
// , 。
@Override
protected void onDestroy() {
this.unregisterReceiver(broadcastReceiver);
super.onDestroy();
}
public void closeAllActivity() {
// , activity
Intent intent = new Intent();
intent.setAction(ACTION_CLOSS_ACTIVITY);
sendBroadcast(intent);//--
}
}