【发布时间】:2012-01-06 03:13:15
【问题描述】:
我想要的是从联系人列表中隐藏联系人。 所以为了实现这一点,我尝试了很多并搜索了很多。最后我知道我们可以生成一个不可见的组,我们可以将联系人分配到该组,这样联系人就不会可见了。
我试过了,但没有成功。即使我设置了ContactsContact.Groups 的GROUP_VISIBLE 字段,我也无法使我的组不可见。
这是我试图创建一个不可见的组:
ArrayList<ContentProviderOperation> ops = new ArrayList<ContentProviderOperation>();
ops.add(ContentProviderOperation
.newInsert(ContactsContract.Groups.CONTENT_URI)
.withValue(ContactsContract.Groups.GROUP_VISIBLE, 0)
.withValue(ContactsContract.Groups.TITLE, "InViGroup").build());
try {
getContentResolver().applyBatch(ContactsContract.AUTHORITY, ops);
} catch (Exception e) {
Log.e("Error", e.toString());
}
我可以将联系人添加到此组,但联系人在电话簿或联系人列表中可见。
我的主要目标是从联系人列表中隐藏联系人。有任何想法吗?如何使我选择的联系人不可见?
【问题讨论】:
-
我也想知道这个。我怀疑主要问题之一是 GROUP_VISIBLE 是只读字段。你有没有找到其他方法来做到这一点?
-
您为什么要这样做?为什么不对您不想出现在联系人列表中的内容使用完全独立的数据库?
-
利用联系人 api 功能,例如聚合。也允许更少的代码。
标签: android contact contactscontract