0
的名单,我有以下代码来获取安装在手机上的应用程序的列表,但我收到以下错误:误差获取应用程序
Type mismatch: cannot convert from element type Object to ResolveInfo" for the list "for (ResolveInfo rInfo : list)" and also "List is a raw type. References to generic type List should be parameterized" for "List list = pm.queryIntentActivities...
public class safety extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
PackageManager pm = this.getPackageManager();
Intent intent = new Intent(Intent.ACTION_MAIN, null);
intent.addCategory(Intent.CATEGORY_LAUNCHER);
List list = pm.queryIntentActivities(intent, PackageManager.PERMISSION_GRANTED);
for (ResolveInfo rInfo : list) {
Log.w("Installed Applications", rInfo.activityInfo.applicationInfo.loadLabel(pm).toString());
}
}
}
有谁知道如何解决这些错误?
当我尝试这种方式我得到的是一个黑色的屏幕当过我运行它。为什么会发生这种情况的任何建议? – 2011-03-29 11:44:55
这是因为您尚未调用setContentView。您的活动没有任何可显示的内容。检查你的adb logcat。它将打印所有的应用程序名称。 – Vinoth 2011-03-29 11:56:38
非常感谢...我不熟悉Eclipse和开发android应用程序,所以我没有关于logcat,那是第一个听说它的人:) – 2011-03-29 13:23:12