他们都在数据中传输信息,看起来就像我开始一个新的意图,他们都开始一个新的活动。所以我真的不知道它们之间的区别。
答案 0 :(得分:2)
使用意图开始新活动时,您可以选择分别指定ACTION_EDIT
或ACTION_VIEW
之一,根据需要查看某些数据或进行修改。可能是这两个意图都开始相同的活动,因此结果是相同的,无论你选择什么,或者它们可能被映射到不同的活动,ACTION_EDIT
将开始一个活动,其中数据是editable和ACTION_VIEW
将启动不活动的活动。顾名思义,您应该选择最适合您的意图的操作。如果您要为活动指定过滤器,则应牢记这一点并过滤您的活动旨在实现的操作。
编辑:数据是指您打算采取的行动。通常,Intent
包含两个内容:操作和要执行操作的数据。以下是the javadoc的简要说明(非常好,我建议您阅读意图解析部分):
action - 要执行的一般操作,例如ACTION_VIEW,ACTION_EDIT,ACTION_MAIN等。
数据 - 要操作的数据,例如联系人数据库中的人员记录,表示为Uri。
使用该信息,Android将尝试找到最适合您的意图的活动(一个具有与您的意图相匹配的过滤器)。您的应用程序中的活动优先于其他活动,但在第三方应用程序中调用活动是可能的,也是常见的。