【问题标题】:startActivity with an implicit category-less intent具有隐式无类别意图的 startActivity
【发布时间】:2011-02-04 15:48:23
【问题描述】:

在我看来,如果使用隐式无类别意图调用 startActivity,则只能启动具有指定默认类别 (android.intent.category.DEFAULT) 的意图过滤器的活动。

如果我们使用 startService 而不是 startActivity,则服务的意图过滤器中不需要该类别。

每个人都看到相同的行为吗?

它是否记录在 Android 官方文档的某处?

【问题讨论】:

    标签: android


    【解决方案1】:

    我认为这是记录在案的。

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

    类别(如果提供)必须全部 被活动列为 它处理的类别。也就是说,如果你 包括类别 CATEGORY_LAUNCHER 和 CATEGORY_ALTERNATIVE,那么您将 仅解析为具有 列出这两者的意图 类别。 活动会很频繁 需要支持 CATEGORY_DEFAULT 以便他们可以被找到 Context.startActivity().

    我的经验是,如果在意图中明确设置了类,则可以将无类别活动与 startActivity() 一起使用。在这种情况下,不会进行意图匹配。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-07-17
      • 2015-07-23
      • 1970-01-01
      相关资源
      最近更新 更多