Thursday, January 2, 2014

Finish all activities

 package com.hrupin;  
 import android.app.Activity;  
 import android.content.BroadcastReceiver;  
 import android.content.Context;  
 import android.content.Intent;  
 import android.content.IntentFilter;  
 public abstract class AppBaseActivity extends Activity {  
  public static final String FINISH_ALL_ACTIVITIES_ACTIVITY_ACTION = "com.hrupin.FINISH_ALL_ACTIVITIES_ACTIVITY_ACTION";  
  private BaseActivityReceiver baseActivityReceiver = new BaseActivityReceiver();  
  public static final IntentFilter INTENT_FILTER = createIntentFilter();  
  private static IntentFilter createIntentFilter() {  
  IntentFilter filter = new IntentFilter();  
  filter.addAction(FINISH_ALL_ACTIVITIES_ACTIVITY_ACTION);  
  return filter;  
  }  
  protected void registerBaseActivityReceiver() {  
  registerReceiver(baseActivityReceiver, INTENT_FILTER);  
  }  
  protected void unRegisterBaseActivityReceiver() {  
  unregisterReceiver(baseActivityReceiver);  
  }  
  public class BaseActivityReceiver extends BroadcastReceiver {  
  @Override  
  public void onReceive(Context context, Intent intent) {  
   if (intent.getAction().equals(FINISH_ALL_ACTIVITIES_ACTIVITY_ACTION)) {  
   finish();  
   }  
  }  
  }  
  protected void closeAllActivities() {  
  sendBroadcast(new Intent(FINISH_ALL_ACTIVITIES_ACTIVITY_ACTION));  
  }  
 }