如何關閉應用中所有的Activity~

說一下簡單的思路:

1:寫一個基類BaseActivity,在這個基類中自定義註冊一個廣播,內容爲finish()。

2:實現一個方法sendBroadCastToExit(),這個方法的內容是發送第一步註冊的廣播sendBroadcast(new Intent("android.intent.action.finish"));

3:所有的activity都繼承這個基類,在你需要關閉所有activity的監聽的地方寫入sendBroadCastToExit();這個方法即可。


廢話少說,看代碼:

public class BaseActivity extends Activity {
	
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		IntentFilter intentFilter = new IntentFilter("android.intent.action.finish");
		registerReceiver(mReceiver, intentFilter);
	}
	
	BroadcastReceiver mReceiver = new BroadcastReceiver() {
		@Override
		public void onReceive(Context context, Intent intent) {
			finish();
		}
	};
	public void sendBroadCastToExit() {
		sendBroadcast(new Intent("android.intent.action.finish"));
	}
	@Override
	protected void onDestroy() {
		unregisterReceiver(mReceiver);
		super.onDestroy();
	}
}


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章