2017-04-14 2 views
0

J'essaie de trouver moyen de tuer la tâche en cours dans Android Marshmallow j'ai déjà deux méthodes, mais les deux fonctionne bien dans android 4.0.3 and android 5.0.1 mais quand je essayer dans Android 6.0.1, elle ne fonctionne pas une idée pour résoudre ce problème,Comment tuer la tâche en cours d'exécution dans Android Marshmallow

List<ApplicationInfo> packages; 
      PackageManager pm; 
      pm = getPackageManager(); 
      //get a list of installed apps. 
      packages = pm.getInstalledApplications(0); 
      ActivityManager mActivityManager = (ActivityManager)getApplicationContext().getSystemService(Context.ACTIVITY_SERVICE); 
      String myPackage = getApplicationContext().getPackageName(); 
      for (ApplicationInfo packageInfo : packages) { 
       if((packageInfo.flags & ApplicationInfo.FLAG_SYSTEM)==1)continue; 
       if(packageInfo.packageName.equals(myPackage)) continue; 
       mActivityManager.killBackgroundProcesses(packageInfo.packageName); 
      } 

et cette méthode:

ActivityManager am = (ActivityManager) getApplicationContext().getSystemService(Context.ACTIVITY_SERVICE); 
      for (ActivityManager.RunningAppProcessInfo pid : am.getRunningAppProcesses()) { 
       am.killBackgroundProcesses(pid.processName); 
      } 

Répondre

0

essayez d'utiliser dans votre deuxième méthode.

android.os.Process.killProcess(pid); 

Tuez le processus avec le PID donné. Notez que, bien que cette API nous autorise à tuer n'importe quel processus en fonction de son PID, le noyau imposera toujours des restrictions standard sur les PID que vous êtes en mesure de tuer. Généralement, cela signifie uniquement le processus exécutant les packages/applications de l'appelant et tous les processus supplémentaires créés par cette application; les paquets partageant un UID commun seront également capables de tuer les processus les uns des autres. Taken de here

Je recommande également obtenir votre code d'application à l'aide

android.os.Process.myPid(); 
+0

Merci pour la réponse, pouvez-vous expliquer plus –

+0

Edité avec la description –