I tried a lot to get the list of recent and running applications(not processes) but couldn't get it.
I went through all the stackoverflow questions regarding this but the only answer i got about the running processes and recent tasks not the application specific like we can see in Samsung Mobile task manager on long press of home button.
I am able to get the Running processes by this code :
ActivityManager actvityManager = (ActivityManager)
this.getSystemService( ACTIVITY_SERVICE );
List<RunningAppProcessInfo> procInfos = actvityManager.getRunningAppProcesses();
for(RunningAppProcessInfo runningProInfo:procInfos){
Log.d("Running Processes", "()()"+runningProInfo.processName);
}
It is giving the package names of all processes but i want only the package names of applications that i have launched(Both Recent and Running).
How can I extract that from Running Application Processes?
UPDATE: I don't see a way to get the name of the recent tasks even by using the below solution but this will work for the currently running and frozen tasks: getRunningTasks
Using getRunningTasks
will return a list of RunningTaskInfo
that contain the base ComponentName
which you can use to get the package name from by calling getPackageName()
.
ORIGINAL ANSWER:
You should look into getRecentTasks. Its function is described as
Return a list of the tasks that the user has recently launched, with the most recent being first and older ones after in order.
Note: this method is only intended for debugging and presenting task management user interfaces.
This should get you a list of all the apps that have recently run or are running.
Recent you can get from getRecentTasks which returns RecentTaskInfo.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With