在android中获取联系人

时间:2011-10-07 11:39:57

标签: android android-contacts android-contentprovider

我已经通过android模拟器插入了几个联系人。

我想获取姓名,号码,电子邮件等。对于每个联系人。

我知道要获取联系号码,我们需要参考

ContactsContract.CommonDataKinds.Phone.CONTENT_URI

而不是

ContactsContract.Contacts.CONTENT_URI

我的问题是如何链接两个查询结果,以便我可以将单个联系人及其属性聚合在一起?似乎只有ContactsContract.Data.DISPLAY_NAME在结果和唯一属性中都是常见的,这些属性可以在URI中获取而不在查询的投影中指定。

任何人都可以指导我吗?

谢谢, Adithya。

3 个答案:

答案 0 :(得分:2)

答案 1 :(得分:0)

使用从ContactsContract.Data.CONTENT_URI中选择并按LOOKUP_KEY对结果进行分组。您将收到一个带有电话,电子邮件等的单个光标,按联系人分组。

答案 2 :(得分:0)

在onactivityresult中,我们将光标移动到联系人数据库以访问联系人数据库的各个字段,我们有ContactsContract.PhoneLookup,通过它我们可以索引各种db列然后访问它们。