通过电话号码查找联系人
我使用以下代码获取给定电话号码的联系详细信息:
Uri uri = Uri.withAppendedPath(PhoneLookup.CONTENT_FILTER_URI, Uri.encode(phoneNum));
Cursor cursor = context.getContentResolver().query(uri,null,null,null,null);
但有时光标包含 3 条具有相同电话号码和显示名称的记录。
您能否对此提出解释或可能的原因?
多谢。
I am getting contact details for a given phone number using the following code:
Uri uri = Uri.withAppendedPath(PhoneLookup.CONTENT_FILTER_URI, Uri.encode(phoneNum));
Cursor cursor = context.getContentResolver().query(uri,null,null,null,null);
There is a case though when the cursor contains 3 records with the same phone number and display name.
Can you please suggest an explanation or possible reason for that?
Thanks a lot.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您确定没有为 3 个不同的联系人或 3 个不同的联系方式输入相同的号码吗?您可以拥有多个具有相同号码的联系人,并在联系人应用程序中手动合并它们。
您正在构建的 URI 是对联系人内容提供程序的查询,因此在上述情况下,可以针对给定号码返回多个联系人。
Are you certain that you don't have the same number entered for 3 different contacts or 3 different contact methods? You can have multiple contacts with the same numbers and manually merge them in the contacts app.
The URI you are building is a query for the contacts content provider so in the case above it is possible to return more than one contact for a given number.