Skip to main content

How to finish all activities in your Android application through simple call

Hi,
Maybe you had some problem which I can describe and show the way to fix it.
Actually, problem is a closing all your Android application’s Activities through simple call.
There are many ways to fix this. I want to show you one of them.
Before starting I want to ask you something. Please email me or post a comment for this post if you find better and more flexible way to close all Android application's activities. I will be appreciative you!
Below you can download the sample project. This project contains 3 (three) activities and ONE abstract Activity. All Activities in this sample project extended this abstract Activity class. This Activity extended Activity class from Android API.

The most interesting contains in this abstract Activity. Here the source:

package com.ravi;
import android.app.Activity;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;

public class AppBaseActivity extends Activity {
public static final String FINISH_ALL_ACTIVITIES_ACTIVITY_ACTION = "com.ravi.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));
}
}


You can see that this class contains BrodcastReceiver –> BaseActivityReceiver
This broadcastReceiver makes finish() Activity. This class also contains methods to create intentFilter, register/unregister broadcastReceiver and method closeAllActivities() which broadcast Intent to close Activities of only YOUR Android application.

The code is pretty simple. :) 
Download source code. Here you can download the sample project

Comments

Post a Comment

Popular posts from this blog

ORMLite with Android

This tutorial will guide you how to implement ORMLite (a very light weight, open source, Android compatible ORM) in an Android project. Android supports SQLite database and writing database queries can create a lot of boilerplate code and can be really difficult to debug. I was looking for some sort of ORM library for android. I came around few of them. I decided to give ORMLite a shot. The library is very stable and uses annotations. It was really easy to implement everything so I decided to stick with it. What are the benefits you may achieve compare to conventional way of using SQLite from Android. You will learn to build an app with ORMLite that allows you to store and view data from a database. So lets begin… Model To use ORMLite, you first need to create your model classes. A sample model class would like this. Open below link to view source EmployeeDetails.java Database Helper It is the most important file from the ORMLite implementation point of view, which cons

Firebase – Login and Registration Authentication

Android Getting Started with Firebase – Login and Registration Authentication With the latest news from Google I/O comes the new and upgraded Firebase . To demonstrate how simplified and easy to use firebase is, we will build a simple login/register (Firebase Authentication) demo using the Firebase Email & Password authentication. Firebase provides a full set of authentication options out-of-the-box. Firebase automatically stores your users’ credentials securely (using bcrypt ) and redundantly (with replication and daily off-site backups). This separates sensitive user credentials from your application data, and lets you focus on the user interface and experience for your app. Features of Firebase Firebase comes with bunch features essential for every android app starting from authentication to hosting the app. Firebase Advantages * Super easy and quick to implement  *  No server side configuration needed. No PHP Scripts and No Data