android intentfilter类别的目的

时间:2013-01-31 17:08:00

标签: android categories intentfilter

我从几个来源读到有关IntentFilter中使用的类别的信息。但是,我似乎无法掌握他们的目的是什么,各种类别的含义是什么,以及它们与行动的区别。有人可以解释一下吗?

提前致谢。

1 个答案:

答案 0 :(得分:2)

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

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

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

行动和类别略有不同。我认为行动是对您的应用程序可以执行的操作的具体声明。我认为类别是应用程序的广泛声明。

名为CATEGORY_DEFAULT的类别对我来说是最令人困惑的类别(我想其他所有人)。 android文档说“活动经常需要支持CATEGORY_DEFAULT,以便Context.startActivity()可以找到它们”。另一个引用是“另请注意此处提供的DEFAULT类别:当未明确指定其组件名称时,Context.startActivity方法需要这样才能解析您的活动。”我尝试不专注于CATEGORY_DEFAULT的含义,只要记住你需要调用startActivity才能正常工作。