android developer tiny share-20170628

今天继续讲android的Contact ContentProvider,讲CommonDataKinds类,讲类型专用列名称和通用列名称的映射关系。

以下是android developer官方的讲解:


类型专用列名称
为便于处理特定类型行的列,联系人提供程序还提供了 ContactsContract.CommonDataKinds 子类中定义的类型专用列名称常量。 这些常量只是为同一列名称提供不同的常量名称,这有助于您访问特定类型行中的数据。


例如,ContactsContract.CommonDataKinds.Email 类为 ContactsContract.Data 行定义类型专用列名称常量,该行的 MIME 类型为 Email.CONTENT_ITEM_TYPE。 该类包含电子邮件地址列的 ADDRESS 常量。 ADDRESS 的实际值为“data1”,这与列的通用名称相同。


注意:请勿使用具有提供程序某个预定义 MIME 类型的行向 ContactsContract.Data 表中添加您自己的自定义数据。 否则您可能会丢失数据,或导致提供程序发生故障。 例如,如果某一行具有 MIME 类型 Email.CONTENT_ITEM_TYPE,并且 DATA1 列包含的是用户名而不是电子邮件地址,您就不应添加该行。如果您为该行使用自定义的 MIME 类型,则可自由定义您的自定义类型专用的列名称,并随心所欲地使用这些列。


图 2 显示的是描述性列和数据列在 ContactsContract.Data 行中的显示情况,以及类型专用列名称“覆盖”通用列名称的情况

图 2. 类型专用列名称和通用列名称。


类型专用列名称类


表 2 列出了最常用的类型专用列名称类:

表 2. 类型专用列名称类

映射类数据类型说明
ContactsContract.CommonDataKinds.StructuredName与该数据行关联的原始联系人的姓名数据。一位原始联系人只有其中一行。
ContactsContract.CommonDataKinds.Photo与该数据行关联的原始联系人的主要照片。一位原始联系人只有其中一行。
ContactsContract.CommonDataKinds.Email与该数据行关联的原始联系人的电子邮件地址。一位原始联系人可有多个电子邮件地址。
ContactsContract.CommonDataKinds.StructuredPostal与该数据行关联的原始联系人的邮政地址。一位原始联系人可有多个邮政地址。
ContactsContract.CommonDataKinds.GroupMembership将原始联系人链接到联系人提供程序内其中一组的标识符。组是帐户类型和帐户名称的一项可选功能。 联系人组部分对其做了更详尽的描述。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值