Most visited

Recently visited

Added in API level 5

ContactsContract.Intents

public static final class ContactsContract.Intents
extends Object

java.lang.Object
   ↳ android.provider.ContactsContract.Intents


包含用于创建或管理涉及联系人的 Intents助手类。

Summary

Nested classes

class ContactsContract.Intents.Insert

便捷类包含用于创建联系人的字符串常量Intents

Constants

String ACTION_VOICE_SEND_MESSAGE_TO_CONTACTS

活动行动:通过语音向某人发起消息。

String ATTACH_IMAGE

开始一个活动,让用户选择一个联系人来附加图像。

String CONTACTS_DATABASE_CREATED

这是联系人数据库创建时触发的意图。

String EXTRA_CREATE_DESCRIPTION

SHOW_OR_CREATE_CONTACT一起使用以指定在提示用户创建新联系人时显示的确切描述。

String EXTRA_FORCE_CREATE

如果未找到匹配的联系人,请与 SHOW_OR_CREATE_CONTACT一起使用以强制创建新联系人。

String EXTRA_RECIPIENT_CONTACT_CHAT_ID

此额外信息为联系人指定了消息应用程序的唯一ID,与 ACTION_VOICE_SEND_MESSAGE_TO_CONTACTS用于提供给收件人。

String EXTRA_RECIPIENT_CONTACT_NAME

此额外指定联系人姓名(联系人提供程序中的全名),与 ACTION_VOICE_SEND_MESSAGE_TO_CONTACTS用于提供给收件人。

String EXTRA_RECIPIENT_CONTACT_URI

此额外信息指定联系人的内容提供商URI(如果联系人位于联系人提供商中),与 ACTION_VOICE_SEND_MESSAGE_TO_CONTACTS一起使用以提供给收件人。

String INVITE_CONTACT

这是当用户点击联系人的“邀请到网络”按钮时触发的意图。

String METADATA_ACCOUNT_TYPE

与描述 ACCOUNT_TYPEACTION_VOICE_SEND_MESSAGE_TO_CONTACTS活动关联的字符串,用于相应的联系人提供程序实现。

String METADATA_MIMETYPE

与描述 MIMETYPEACTION_VOICE_SEND_MESSAGE_TO_CONTACTS活动关联的字符串,用于相应的联系人提供程序实现。

String SEARCH_SUGGESTION_CLICKED

这是在点击搜索建议时触发的意图。

String SEARCH_SUGGESTION_CREATE_CONTACT_CLICKED

这是在点击创建联系人的搜索建议时触发的意图。

String SEARCH_SUGGESTION_DIAL_NUMBER_CLICKED

这是当点击拨号的搜索建议时触发的意图。

String SHOW_OR_CREATE_CONTACT

以mailto:或tel:scheme作为输入数据URI。

Public constructors

ContactsContract.Intents()

Inherited methods

From class java.lang.Object

Constants

ACTION_VOICE_SEND_MESSAGE_TO_CONTACTS

Added in API level 24
String ACTION_VOICE_SEND_MESSAGE_TO_CONTACTS

活动行动:通过语音向某人发起消息。 消息可以是文本,音频,视频或图像(照片)。 无论使用的基础消息协议如何,此操作都支持与特定联系人的消息传递。

该动作可以来自语音助理作为语音交互。 在这种情况下,支持CATEGORY_VOICE的接收活动在继续之前可能会检查返回值isVoiceInteractionRoot() 通过这样做来检查活动是否确实确实是由Voice Assistant启动的,并且可以立即发送消息,而无需用户进一步输入。 这可以在通过语音发送消息时实现流畅的用户体验。 注意:此活动还必须支持CATEGORY_DEFAULT因此可以通过startVoiceActivity(Intent)找到startVoiceActivity(Intent)

当语音助手未启动该操作或接收活动不支持 CATEGORY_VOICE ,活动必须在发送消息之前与用户确认(因为在这种情况下,未知哪个应用程序发送了意图,这可能是恶意的)。

为了允许Voice Assistant帮助用户消除联系人,消息传递应用程序可以选择与联系人提供程序集成。 您需要指定一个新的MIME类型,才能在数据表中存储应用程序的唯一联系人ID和可选的人员可读标签。 Voice Assistant需要知道您正在使用的MIME类型和ACCOUNT_TYPE ,以便提供平滑的联系人消歧用户体验。 执行此类集成时应满足以下约定:

  • This activity should have a string meta-data field associated with it, METADATA_ACCOUNT_TYPE, which defines ACCOUNT_TYPE for your Contacts Provider implementation. The account type should be globally unique, for example you can use your app package name as the account type.
  • This activity should have a string meta-data field associated with it, METADATA_MIMETYPE, which defines MIMETYPE for your Contacts Provider implementation. For example, you can use "vnd.android.cursor.item/vnd.{$app_package_name}.profile" as MIME type.
  • When filling Data table row for METADATA_MIMETYPE, column DATA1 should store the unique contact ID as understood by the app. This value will be used in the EXTRA_RECIPIENT_CONTACT_CHAT_ID.
  • Optionally, when filling Data table row for METADATA_MIMETYPE, column DATA3 could store a human readable label for the ID. For example it could be phone number or human readable username/user_id like "a_super_cool_user_name". This label may be shown below the Contact Name by the Voice Assistant as the user completes the voice action. If DATA3 is empty, the ID in DATA1 may be shown instead.
  • Note: Do not use DATA3 to store the Contact Name. The Voice Assistant will already get the Contact Name from the RawContact’s display_name.
  • Note: Some apps may choose to use phone number as the unique contact ID in DATA1. If this applies to you and you’d like phone number to be shown below the Contact Name by the Voice Assistant, then you may choose to leave DATA3 empty.
  • Note: If your app also uses DATA3 to display contact details in the Contacts App, make sure it does not include prefix text such as "Message + " or "Free Message + ", etc. If you must show the prefix text in the Contacts App, please use a different DATA# column, and update your contacts.xml to point to this new column.
  • Everytime the user sends a message to a contact, your app may choose to update the TIMES_CONTACTED entry through DataUsageFeedback class. Doing this will allow Voice Assistant to bias speech recognition to contacts frequently contacted, this is particularly useful for contact names that are hard to pronounce.
If the app chooses not to integrate with the Contacts Provider (in particular, when either METADATA_ACCOUNT_TYPE or METADATA_MIMETYPE field is missing), Voice Assistant will use existing phone number entries as contact ID's for such app.

输入: getType()是要发送的数据的MIME类型。 意图发送者将总是将具体的MIME类型置于意图类型中,例如“text / plain”或“audio / wav”。 如果MIME类型是“text / plain”,则发送的消息将通过EXTRA_TEXT作为样式化的CharSequence提供。 否则,邮件内容将通过setClipData(ClipData)作为内容提供商URI提供。 在后一种情况下,EXTRA_TEXT仍然可以选择提供; 例如,对于音频消息,ClipData将包含记录的URI,而EXTRA_TEXT可能包含此记录的文本转录。

该消息可以有n个收件人。 该消息的第n个接收者将被提供作为第n元素EXTRA_RECIPIENT_CONTACT_URIEXTRA_RECIPIENT_CONTACT_CHAT_IDEXTRA_RECIPIENT_CONTACT_NAME (作为结果,EXTRA_RECIPIENT_CONTACT_URI,EXTRA_RECIPIENT_CONTACT_CHAT_ID和EXTRA_RECIPIENT_CONTACT_NAME都应该是长度为n的)。 如果这3个元素都未提供(例如,全部3为空),或者如果提供的信息不明确,则活动应提示用户让收件人发送消息。

输出:没有

也可以看看:

常量值:“android.provider.action.VOICE_SEND_MESSAGE_TO_CONTACTS”

ATTACH_IMAGE

Added in API level 5
String ATTACH_IMAGE

开始一个活动,让用户选择一个联系人来附加图像。 挑选联系人后,它会以人脸检测模式启动图像裁剪器。

常量值:“com.android.contacts.action.ATTACH_IMAGE”

CONTACTS_DATABASE_CREATED

Added in API level 18
String CONTACTS_DATABASE_CREATED

这是联系人数据库创建时触发的意图。

READ_CONTACT权限需要接收这些广播。

常量值:“android.provider.Contacts.DATABASE_CREATED”

EXTRA_CREATE_DESCRIPTION

Added in API level 5
String EXTRA_CREATE_DESCRIPTION

SHOW_OR_CREATE_CONTACT用于指定在提示用户创建新联系人时显示的确切描述。

类型:STRING

常量值:“com.android.contacts.action.CREATE_DESCRIPTION”

EXTRA_FORCE_CREATE

Added in API level 5
String EXTRA_FORCE_CREATE

如果未找到匹配的联系人,请与SHOW_OR_CREATE_CONTACT一起使用以强制创建新联系人。 否则,默认行为是在创建之前用对话框提示用户。

类型:BOOLEAN

常量值:“com.android.contacts.action.FORCE_CREATE”

EXTRA_RECIPIENT_CONTACT_CHAT_ID

Added in API level 24
String EXTRA_RECIPIENT_CONTACT_CHAT_ID

此额外信息为联系人指定了消息传递应用程序的唯一ID,与ACTION_VOICE_SEND_MESSAGE_TO_CONTACTS用于提供给收件人。 这个额外的价值是String[] 阵列中元素的数量应该等于收件人的数量(并且与EXTRA_RECIPIENT_CONTACT_URIEXTRA_RECIPIENT_CONTACT_NAME一致)。 当特定收件人的元素值不存在时,它将被设置为空。

元素的值来自联系人提供程序中的DATA1列, MIMETYPEMETADATA_MIMETYPE (如果应用程序指定了METADATA_ACCOUNT_TYPEMETADATA_MIMETYPE ;否则该值将是电话号码),并且应该是明确的联系人终端节点。 该值是特定于应用程序的,可能是某个专有ID或电话号码。

常量值:“android.provider.extra.RECIPIENT_CONTACT_CHAT_ID”

EXTRA_RECIPIENT_CONTACT_NAME

Added in API level 24
String EXTRA_RECIPIENT_CONTACT_NAME

此额外指定联系人姓名(联系人提供程序中的全名),与ACTION_VOICE_SEND_MESSAGE_TO_CONTACTS用于提供给收件人。 这个额外的价值是String[] 数组中元素的数量应该等于收件人的数量(并且与EXTRA_RECIPIENT_CONTACT_URIEXTRA_RECIPIENT_CONTACT_CHAT_ID一致)。 当特定收件人的元素值不存在时,它将被设置为空。

元素的值来自RawContact的display_name列。

示例值:{“Jane Doe”}

常量值:“android.provider.extra.RECIPIENT_CONTACT_NAME”

EXTRA_RECIPIENT_CONTACT_URI

Added in API level 24
String EXTRA_RECIPIENT_CONTACT_URI

此额外信息指定联系人的内容提供者URI(如果联系人位于联系人提供程序中),与ACTION_VOICE_SEND_MESSAGE_TO_CONTACTS用于提供给收件人。 这个额外的价值是String[] 阵列中元素的数量应等于收件人的数量(并且与EXTRA_RECIPIENT_CONTACT_CHAT_IDEXTRA_RECIPIENT_CONTACT_NAME一致)。 当特定收件人的元素值不存在时,它将被设置为空。

注意:一个联系人可能在特定的消息传递平台上有多个帐户(例如聊天ID),因此这可能不明确。 例如,一个联系人“John Smith”可能在同一个消息应用程序上有两个帐户。

示例值:{“content://com.android.contacts/contacts/16”}

常量值:“android.provider.extra.RECIPIENT_CONTACT_URI”

INVITE_CONTACT

Added in API level 14
String INVITE_CONTACT

这是当用户点击联系人的“邀请到网络”按钮时触发的意图。 只发送给支持“邀请到网络”功能的联系人提供商明确注册的活动。

getData()包含联系人的查找URI。

常量值:“com.android.contacts.action.INVITE_CONTACT”

METADATA_ACCOUNT_TYPE

Added in API level 24
String METADATA_ACCOUNT_TYPE

与描述 ACCOUNT_TYPEACTION_VOICE_SEND_MESSAGE_TO_CONTACTS活动关联的字符串,用于相应的联系人提供程序实现。

常量值:“android.provider.account_type”

METADATA_MIMETYPE

Added in API level 24
String METADATA_MIMETYPE

与描述 MIMETYPEACTION_VOICE_SEND_MESSAGE_TO_CONTACTS活动关联的字符串,用于相应的联系人提供程序实现。

常量值:“android.provider.mimetype”

SEARCH_SUGGESTION_CLICKED

Added in API level 5
String SEARCH_SUGGESTION_CLICKED

这是在点击搜索建议时触发的意图。

常量值:“android.provider.Contacts.SEARCH_SUGGESTION_CLICKED”

SEARCH_SUGGESTION_CREATE_CONTACT_CLICKED

Added in API level 5
String SEARCH_SUGGESTION_CREATE_CONTACT_CLICKED

这是在点击创建联系人的搜索建议时触发的意图。

常量值:“android.provider.Contacts.SEARCH_SUGGESTION_CREATE_CONTACT_CLICKED”

SEARCH_SUGGESTION_DIAL_NUMBER_CLICKED

Added in API level 5
String SEARCH_SUGGESTION_DIAL_NUMBER_CLICKED

这是当点击拨号的搜索建议时触发的意图。

常量值:“android.provider.Contacts.SEARCH_SUGGESTION_DIAL_NUMBER_CLICKED”

SHOW_OR_CREATE_CONTACT

Added in API level 5
String SHOW_OR_CREATE_CONTACT

以mailto:或tel:scheme作为输入数据URI。 如果一个联系人存在给定的数据,它会显示。 如果没有联系人存在,对话框会询问用户是否想要创建一个新的联系人并填写所提供的详细信息。如果多个联系人共享数据,则会提示用户选择他们想要查看的联系人。

对于 mailto: URI,方案特定部分必须是原始电子邮件地址,例如使用 fromParts(String, String, String)构建的电子邮件地址。

对于tel: URI,使用标准呼叫者ID查找算法将方案特定部分与现有号码进行比较。 该号码必须正确编码,例如使用fromParts(String, String, String)

如果没有要显示的联系人,则 ContactsContract.Intents.Insert类中的任何附加内容都将传递给创建活动。

如果 EXTRA_FORCE_CREATE ,则传递true会在联系人不存在时跳过提示用户。

常量值:“com.android.contacts.action.SHOW_OR_CREATE_CONTACT”

Public constructors

ContactsContract.Intents

Added in API level 5
ContactsContract.Intents ()

Hooray!