Android Packagemanager queryIntentActivitys

标签 android homescreen packagemaker

我想获取所有具有 Intent 监听器的应用程序

Intent.CATEGORY_HOME

基本上就是启动器

我有这个代码:

final Intent mainIntent = null;
    mainIntent.addCategory(Intent.CATEGORY_HOME);

    final List pkgAppsList = this.getPackageManager().queryIntentActivities( mainIntent, 0); 

    ListView app_list = (ListView) findViewById(R.id.application_list);


    ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
            android.R.layout.simple_list_item_1, android.R.id.text1,pkgAppsList);
    app_list.setAdapter(adapter);

这应该返回监听 home 键按下的应用程序

但我只得到一个空指针异常

最佳答案

使用

Intent mainIntent = new Intent(Intent.ACTION_MAIN, null); 

而不是

Intent mainIntent = null;

关于Android Packagemanager queryIntentActivitys,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11070340/

相关文章:

android - 在 state_selected 中单击时,ImageButton 选择器不会触发 state_pressed

android - 在 ActionBarSherlock 中覆盖 onContextItemSelected()

ipad - 您如何强制iPad主屏幕加书签的Web应用程序刷新?

android - 如何防止多次创建快捷方式?

android - 两次调用 ffmpeg.c 导致应用程序崩溃时出现问题?

java - "java.lang.NoClassDefFoundError: javax/xml/bind/annotation/XmlSchema"接受 SDK 许可时

android - Android 系统在哪里存储应用程序在您的主屏幕/桌面上的位置

macos - 在 Mac OS X 上查找 .app/使用 XCode 4.3 运行 PackageMaker 的正确方法

macos - Mac PackageMaker - 随机重置所有者/组/权限

macos - Mac PackageMaker - 允许重定位问题