<分区>
我有一个想法为 android 制作任务管理器。谁能告诉我如何在 android 中获取所有当前运行的进程?
<分区>
我有一个想法为 android 制作任务管理器。谁能告诉我如何在 android 中获取所有当前运行的进程?
最佳答案
使用下面的代码你可以获得正在运行的进程列表:-
ActivityManager actvityManager = (ActivityManager)
this.getSystemService( ACTIVITY_SERVICE );
List<RunningAppProcessInfo> procInfos = actvityManager.getRunningAppProcesses();
for(RunningAppProcessInfo runningProInfo:procInfos){
Log.d("Running Processes", "()()"+runningProInfo.processName);
}
更多信息您可以访问this link.
要根据包名称获取应用程序名称,请使用 PackageManager
类。
final PackageManager pkgmgr = getApplicationContext().getPackageManager();
ApplicationInfo appinfo;
try {
appinfo = pkgmgr.getApplicationInfo( this.getPackageName(), 0);
} catch (final NameNotFoundException e) {
appinfo = null;
}
final String applicationName = (String) (appinfo != null ? pkgmgr.getApplicationLabel(appinfo) : "(unknown)");
根据 PID 使用获取应用名称:-
public static String getAppNameByPID(Context context, int pid){
ActivityManager manager
= (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE);
for(RunningAppProcessInfo processInfo : manager.getRunningAppProcesses()){
if(processInfo.pid == pid){
return processInfo.processName;
}
}
return "";
}
最后检查一个应用程序是否是系统应用程序使用:-
private boolean isSystemPackage(PackageInfo pkgInfo) {
return (pkgInfo.applicationInfo.flags &
ApplicationInfo.FLAG_SYSTEM) != 0;
}
关于java - 获取有关所有正在运行的进程的信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25721994/