我正在尝试创建一个显示所有活动应用程序的程序。
我搜索了所有地方,但只能找到仅显示包名称的代码。
如果您的主人能告诉我如何显示所有活跃的应用程序名称
,那将会非常有帮助答案 0 :(得分:33)
您尝试使用ActivityManager.getRunningAppProcesses()
了吗?
以下是检索姓名的示例代码:
ActivityManager am = (ActivityManager)this.getSystemService(ACTIVITY_SERVICE);
List l = am.getRunningAppProcesses();
Iterator i = l.iterator();
PackageManager pm = this.getPackageManager();
while(i.hasNext()) {
ActivityManager.RunningAppProcessInfo info = (ActivityManager.RunningAppProcessInfo)(i.next());
try {
CharSequence c = pm.getApplicationLabel(pm.getApplicationInfo(info.processName, PackageManager.GET_META_DATA));
Log.w("LABEL", c.toString());
}catch(Exception e) {
//Name Not FOund Exception
}
}
答案 1 :(得分:1)
如果您要获取软件包名称,您应该能够使用PackageManager获取有关该应用程序的其他信息:
http://developer.android.com/reference/android/content/pm/PackageManager.html
有获取应用程序图标,ApplicationInfo和ActivityInfo对象的直接方法。在我的脑海中,我不知道哪一个会引导您使用可读的名称,但是如果它不能通过这里的方法之一直接访问,则应该可以从应用程序资源访问它(也可以从此类访问)。
答案 2 :(得分:-2)
我在撰写这篇文章时做了一些不正确的假设,现在意识到它们是不正确的。 - 已删除