Obtención de una lista de procesos en ejecución y eliminación de un proceso específico

Estoy ejecutando el siguiente fragmento de código:

ActivityManager actvityManager = (ActivityManager) this.getSystemService(ACTIVITY_SERVICE); List<RunningTaskInfo> procInfos = actvityManager.getRunningTasks(1000); 

Entonces, mato un proceso que me interesa

 actvityManager.killBackgroundProcesses(process.baseActivity.getPackageName()); 

Donde process es una entrada de procInfos .

El problema es que si ejecuto getRunningTasks nuevo – todavía mostraría el proceso que (presumiblemente) mató, mientras que un administrador de tareas para Android enumeró ese proceso antes de llamar a killBackgroundProcesses y eliminado de la lista después de esa llamada.

Entonces, ¿alguna idea sobre cómo el administrador de tareas obtiene su lista de procesos en ejecución? ¿Y es normal que haya matado con éxito el proceso de terceros en un dispositivo no enraizado?

One Solution collect form web for “Obtención de una lista de procesos en ejecución y eliminación de un proceso específico”

'Ejecutar' no significa que un usuario lo inició; Podría estar escuchando eventos, haciendo una sincronización de fondo programada o cualquier otra cosa.

ActivityManager.getRunningTasks () podría estar más cerca de lo que quieres, pero en esencia siempre vas a tener este problema, porque el usuario no tiene un control total sobre lo que está activo actualmente.

  • La notificación sigue en la barra después de matar al servicio
  • ¿Cómo matar un proceso?
  • Android - ¿Cómo decidir si ejecutar un servicio en un proceso separado?
  • Android: El proceso secundario (logcat) continúa ejecutándose después de que el proceso padre (aplicación) falleció
  • GetRunningAppProcesses devuelve la lista vacía en Android M (5.1.1)
  • Runtime.exec () error: se bloquea sin proporcionar un objeto de proceso
  • ¿Las aplicaciones que utilizan varios procesos comparten una instancia de Dalvik?
  • Activación del flash de la cámara durante la grabación de vídeo
  • Java.lang.Thread.setPriority vs android.os.Process.setThreadPriority
  • Cada actividad en Android es un proceso o una aplicación es un proceso
  • Android proceso sigue vivo después de terminar las actividades
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.