【发布时间】:2015-05-22 10:34:00
【问题描述】:
我无法获取存储联系人的组名。我可以得到它是否作为布尔值(IN_VISIBLE_GROUP)添加到任何组中。我不知道如何获取组名或 id。
ContentResolver cr = this.getContentResolver();
Cursor cur = cr.query(ContactsContract.Contacts.CONTENT_URI, null,
null, null, null);
if (cur.getCount() > 0) {
while (cur.moveToNext())
{
id = cur.getString(cur
.getColumnIndex(BaseColumns._ID));
String name = cur
.getString(cur
.getColumnIndex(ContactsContract.Contacts.DISPLAY_NAME));
String group = cur
.getString(cur
.getColumnIndex(ContactsContract.Contacts.IN_VISIBLE_GROUP));
我尝试过使用 ContactsContract.Groups 和 ContactsContract.Groups 和 ContactsContract.CommonDataKinds.GroupMembership 但这不是解决方案。
【问题讨论】:
-
通常,您会使用ContactsContract.Groups-class。为什么它不适合你?
-
@Lukas 我用过 String g = cur .getString(cur1 .getColumnIndex(ContactsContract.Groups.TITLE));但返回相同的 BaseColumns._ID。请使用任何 sn-p 代码来使用 ContactsContract.Groups..
-
您可以查看基本的Android-Contact应用程序,其源代码可以找到here
-
@Lukas 谢谢,但我得到的组名仍然出错