我正在尝试让后台运行应用程序名称。这是我的代码
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);
}
如何从上面的代码中获取应用程序名称或包名?
我们还有其他方法可以找到后台运行的应用程序名称吗?
答案 0 :(得分:1)
我认为你可以从li.service获得包经理
ComponentName拥有方法getPackageName()。
然后,您可以使用PackageManager检索有关此程序包的更多详细信息。
答案 1 :(得分:1)
也许您可以尝试以下方法(同时您应该检查代码,因为我没有检查它)
ComponentName mComponentName = list2.service;
Log.d("DEBUG: ", "ClassName: " + mComponentName.getClassName() + " Package: " + mComponentName.getPackageName());