I want to get all the tasks that are running in android.I found getRunningTasks in ActivityManager but from android-5.0 the getRunningTasks may not give all the tasks (in my
Use getRunningAppProcesses
, which will return a list of RunningAppProcessInfo
objects that will give you some data about each running app. One of the pieces of information you can retrieve about the app is its importance
, which can have a value IMPORTANCE_FOREGROUND
which indicates that the process is the currently active application!
Related Documentation:
getRunningAppProcesses
RunningAppProcessInfo
IMPORTANCE_FOREGROUND
If this helped you, feel free to press that arrow to the left :)
Use this code
Its works for me. Dont forgot to use ListView
in your Xml
File.
ListView listView = (ListView) findViewById(R.id.listview);
ActivityManager actvityManager = (ActivityManager) this.getSystemService(ACTIVITY_SERVICE);
List<ActivityManager.RunningAppProcessInfo> procInfos = actvityManager.getRunningAppProcesses();
String[] values = new String[procInfos.size()];
final String packageName = "my.application.package";
PackageManager packageManager = getApplicationContext().getPackageManager();
for (int i = 0; i < procInfos.size(); i++) {
values[i] = procInfos.get(i).processName;
}
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, values);
listView.setAdapter(adapter);
I believe getRecentTasks and getRunningTask were deprecated as of API 21. I'm not sure what you're trying to achieve, perhaps u should try getRunningAppProcess. which give u a similar result.
If you are not the owner of that task, Android won't give you its info.