2011-10-07 209 views
0

我通过android模拟器插入了几个联系人。在android中获取联系人

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

我了解,获取联系人号码,我们需要参考

ContactsContract.CommonDataKinds.Phone.CONTENT_URI 

,而不是

ContactsContract.Contacts.CONTENT_URI 

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

任何人都可以引导我吗?

谢谢, Adithya。

回答

0

使用从ContactsContract.Data.CONTENT_URI中选择以及按LOOKUP_KEY分组的结果。您将收到带有手机,电子邮件等的单个光标,按联系人分组。

0

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

2
+0

你能告诉我一件事?如果我们可以在一个查询中获取所有这些信息,因为它可以在第三个指定的链接中完成,那么为什么我们对以下每个信息都有不同的URI: 1)ContactsContract.CommonDataKinds.Phone 2)ContactsContract.CommonDataKinds.Email etc ..? – Adithya