CATEGORY_BROWSABLE的真正含义是什么?

问题描述:

这是否意味着目标活动允许自己由Web浏览器启动,还是意味着目标活动可以响应URL请求?如果我想编写一个可以从隐式意图处理URL请求的应用程序,是否需要在应用程序的意图过滤器中包含可浏览的类别?CATEGORY_BROWSABLE的真正含义是什么?

CATEGORY_BROWSABLE的真正含义是什么?

引用the documentation:可以从浏览器中调用安全必须支持这一类

活动。例如,如果用户正在查看网页或电子邮件并点击文本中的链接,则意图生成执行该链接将需要BROWSABLE类别,以便只有支持此类别的活动才会被视为可能的操作。通过支持这一类别,您承诺通过调用任何匹配的Intent不会造成任何破坏(无需用户干预)。

实际上,浏览器似乎主要将这与ACTION_VIEW用于点击链接(然后,只有在浏览器决定不处理链接本身时)。

这是否意味着目标活动允许自己通过Web浏览器

是的,或多或少的开始。从技术上讲,任何应用程序都可以选择将此类别添加到它的Intents —有没有法律要求这样的应用程序是一个Web浏览器。

如果我想编写一个可以处理来自隐式意图的URL请求的应用程序,是否需要在应用程序的意图过滤器中包含可浏览的类别?

如果您期望Web浏览器(或其他选择行为类似Web浏览器的应用程序)来查找您的活动,那么是的。否则,不。