我正在学习如何将隐式 Intent 与 Intent 过滤器一起使用,但到目前为止还无法触发正确的 Activity 。用于触发 Intent 的代码是:
intent = new Intent();
intent.setAction("com.appsculture.intent.action.PLUGIN_RECEIVER");
startActivity(intent);
所需 Activity 的 Intent 过滤器是:
<activity android:name="PluginReceiver">
<intent-filter>
<action android:name="com.appsculture.intent.action.PLUGIN_RECEIVER"></action>
</intent-filter>
</activity>
我得到的错误是标准的 ActivityNotFound
09-04 17:15:27.827: ERROR/AndroidRuntime(2552): android.content.ActivityNotFoundException: No Activity found to handle Intent { act=com.appsculture.intent.action.PLUGIN_RECEIVER }
解决方案:只需将 android.intent.category.DEFAULT 类别添加到 intent 过滤器
在那之后就像魅力一样工作
最佳答案
我设法通过简单地将 android.intent.category.DEFAULT 类别添加到 intent 过滤器来解决这个问题。在那之后就像一个魅力。
正如 Commonsware 在对他的回答的评论中指出的那样, Activity 需要一个类别,但服务或广播接收器不需要。
关于android - 无法获得隐含的 Intent 来工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7299029/