获取进程名的两种方法

来源:互联网 发布:棉花数据 编辑:程序博客网 时间:2024/05/01 16:36

方案一:

目前网上主流的方案

public static String getProcessName(Context cxt, int pid) {      ActivityManager am = (ActivityManager) cxt.getSystemService(Context.ACTIVITY_SERVICE);      List<RunningAppProcessInfo> runningApps = am.getRunningAppProcesses();      if (runningApps == null) {          return null;      }      for (RunningAppProcessInfo procInfo : runningApps) {          if (procInfo.pid == pid) {              return procInfo.processName;          }      }      return null;  }  

方案二:

高效的方案

public static String getProcessName() {  try {    File file = new File("/proc/" + android.os.Process.myPid() + "/" + "cmdline");    BufferedReader mBufferedReader = new BufferedReader(new FileReader(file));    String processName = mBufferedReader.readLine().trim();    mBufferedReader.close();    return processName;  } catch (Exception e) {    e.printStackTrace();    return null;  }}

参考

http://www.rogerblog.cn/2016/03/17/android-proess/

0 0
原创粉丝点击