1

我从几个来源阅读了有关 IntentFilter 中使用的类别的信息。但是,我似乎无法理解它们的目的是什么,各种类别类型的含义以及它们与动作有何不同。有人可以解释一下吗?

提前致谢。

4

1 回答 1

2

整个意图过滤器机制只是 android 让您告诉系统您的应用程序能够做什么的方式。类别只是该过程的一部分。可以从主屏幕启动的活动将具有“启动器”类别。可以从网络打开文件的活动将具有“可浏览”类别。

有关类别列表,请参阅...

http://developer.android.com/reference/android/content/Intent.html#CATEGORY_LAUNCHER

动作和类别略有不同。我认为操作是您的应用程序可以做什么的特定声明。我认为类别是应用程序功能的广泛声明。

名为 CATEGORY_DEFAULT 的类别对我来说是最令人困惑的(我认为其他所有人也是如此)。android 文档说“活动通常需要支持 CATEGORY_DEFAULT,以便 Context.startActivity() 可以找到它们”。另一个引用是“还要注意此处提供的 DEFAULT 类别:这是 Context.startActivity 方法在未明确指定其组件名称时解析您的活动所必需的。”。我尽量不关注 CATEGORY_DEFAULT 的确切含义,只要记住,如果你想调用 startActivity 来正常工作,你就需要它。

于 2013-02-01T03:20:13.250 回答