Speise
Speise

Reputation: 809

How to close all active applications from my Android app?

I have a my Android app, and I would like to close all other active applications from my app. Is there a way to do it in android?

Upvotes: 2

Views: 4800

Answers (3)

Adiii
Adiii

Reputation: 59896

To avoid to killing system apps you can do this,i include code for particlur brand like Huawei have own apps (which often contain Huawei) and samsung have own so this code avoid to kill system apps and will close all other apps.System apps often contain android and adil is my package which i dont wanna kill

    ActivityManager actvityManager = (ActivityManager)
        getApplicationContext().getSystemService( getApplicationContext().ACTIVITY_SERVICE );
    List<RunningAppProcessInfo> procInfos = actvityManager.getRunningAppProcesses();

for(int pnum = 0; pnum < procInfos.size(); pnum++)
{
     if((procInfos.get(pnum)).processName.contains("android")||(procInfos.get(pnum)).processName.contains("system")||(procInfos.get(pnum)).processName.contains("huawei")||(procInfos.get(pnum)).processName.contains("adil")) 
     {
          //Toast.makeText(getApplicationContext(), "system apps", Toast.LENGTH_SHORT).show();
     }
    else
    {
        actvityManager.killBackgroundProcesses(procInfos.get(pnum).processName);
        Toast.makeText(getApplicationContext(), "killed "+procInfos.get(pnum).processName, Toast.LENGTH_SHORT).show();

    }
}

Upvotes: 0

Pratik Butani
Pratik Butani

Reputation: 62391

You can do like this:

int p = android.os.Process.myPid();
android.os.Process.killProcess(p);

Upvotes: 0

Rasel
Rasel

Reputation: 15477

You can do something like this,but it is not recommended:

    List<ApplicationInfo> packages;
    PackageManager pm;
    pm = getPackageManager();
    //get a list of installed apps.
    packages = pm.getInstalledApplications(0);

    ActivityManager mActivityManager = (ActivityManager)context.getSystemService(Context.ACTIVITY_SERVICE);

   for (ApplicationInfo packageInfo : packages) {
        if((packageInfo.flags & ApplicationInfo.FLAG_SYSTEM)==1)continue;
        if(packageInfo.packageName.equals("mypackage")) continue;
        mActivityManager.killBackgroundProcesses(packageInfo.packageName);
   }

Upvotes: 3

Related Questions