5

我陷入了这个麻烦,我无法弄清楚。我google了很多,但没有给我答案。

我解释一下:
我有一个在不同进程中运行的 BroadCastReceiver ( android:process=":anotherProcess")

我想在我的 BroadcastReceiver 中获取这个进程名称。

例如,在这种情况下,它可能是:com.my.package:anotherProcess

是否可以?我该怎么做?

4

1 回答 1

2

我找到了办法。对于任何需要这个的人:

     int id = Process.myPid();
     String myProcessName =context.getPackageName();

     ActivityManager actvityManager = (ActivityManager)context.getSystemService( context.ACTIVITY_SERVICE );
     List<RunningAppProcessInfo> procInfos = actvityManager.getRunningAppProcesses();

     for(RunningAppProcessInfo procInfo : procInfos) {
         if (id == procInfo.pid)
         {
             myProcessName = procInfo.processName;
         }
     }
于 2013-11-09T16:43:17.357 回答