获取带有全名详细信息和电话号码的 SINGLE 光标
Posted
技术标签:
【中文标题】获取带有全名详细信息和电话号码的 SINGLE 光标【英文标题】:Obtaining a SINGLE cursor with full name details and phone numbers 【发布时间】:2012-07-30 02:26:28 【问题描述】:我想创建一个同时包含名字、姓氏和电话号码的光标。这些列不位于 ContactsContract 下的任何可用容器中,我能够获取此信息的唯一方法是首先获取名称的光标,然后通过为每个联系人创建单独的光标来获取电话号码。该解决方案迫使我将数据读取到本地数据结构,而不仅仅是在光标上使用适配器,并且会产生大量性能开销(大约 5 秒,约 140 个电话号码联系人)。
有什么方法可以创建两个游标然后加入表?或者还有其他方法吗? 在过去的两天里,我一直在为这个问题苦苦挣扎,并阅读了我在谷歌上找到的所有内容,但实际上我也无法得到任何我想要的东西。这不可能真的是不可能的,不是吗?
提前致谢!
【问题讨论】:
【参考方案1】:您可以从ContactsContract.CommonDataKinds.Phone
获取DISPLAY_NAME
和NUMBER
。试试这个:
Uri uri = Phone.CONTENT_URI;
String[] projection = new String[]
Phone.DISPLAY_NAME, Phone.NUMBER, Phone.CONTACT_ID, Phone._ID
Cursor contactsCursor = getContentResolver().query(uri, projection, null, null, null);
【讨论】:
以上是关于获取带有全名详细信息和电话号码的 SINGLE 光标的主要内容,如果未能解决你的问题,请参考以下文章
Xamarin Android,使用带有选择和选择参数的 CursorLoader 获取联系人手机号码
如何从 Lync 联系人卡片中获取用户的电话号码或其他联系人详细信息?