2012-02-06 148 views
1

我想获得后台运行的应用程序名称。这里是我的代码如何从android中的进程获取应用程序名称?

ActivityManager am = (ActivityManager)getSystemService(Activity.ACTIVITY_SERVICE); 
    List<ActivityManager.RunningServiceInfo> li = am.getRunningServices(100); 
    for(ActivityManager.RunningServiceInfo list2 : li){ 
     Log.d("DEBUG: ", "Background process: " + list2.process); 
     Log.d("DEBUG: ", "Background pid: " + list2.pid); 
    } 

我如何从上面的代码中获取应用程序名或包名?

我们有其他方法可以找到后台运行的应用程序名称吗?

回答

1

也许你可以试试下面的方法(同时应检查代码,因为我没有检查)

ComponentName mComponentName = list2.service; 
Log.d("DEBUG: ", "ClassName: " + mComponentName.getClassName() + " Package: " + mComponentName.getPackageName()); 
+0

太感谢你了,其工作 – Vani 2012-02-06 09:33:22

1

我想你可以从li.service

单元名拥有的方法getPackageName()得到的包管理器。

然后,您可以使用PackageManager检索有关此包的更多详细信息。

+0

谢谢你,我找到了答案 – Vani 2012-02-06 09:34:45

相关问题