android - 获取联系人组时重复条目 Android 4+

标签 android android-contacts

我正在使用以下查询获取所有联系人组:

//get list of contact groups from ContactsContract
    Cursor groups_cursor = getContentResolver()//
            .query(ContactsContract.Groups.CONTENT_SUMMARY_URI,//
                    new String[] { //
                    ContactsContract.Groups._ID,//
                            ContactsContract.Groups.TITLE, //
                            ContactsContract.Groups.DATA_SET,//
                            ContactsContract.Groups.GROUP_VISIBLE,//
                            ContactsContract.Groups.DELETED,//
                            ContactsContract.Groups.SYSTEM_ID,//
                            ContactsContract.Groups.SUMMARY_COUNT, //
                            ContactsContract.Groups.SUMMARY_WITH_PHONES //
                    },//
                    null, null, null);//

我的光标总是包含“家庭”、“ friend ”和“同事”组两次。

为什么我会得到这些重复项?

我有一个已同步的 Google 帐户。

联系人应用中正确列出了群组。

最佳答案

我遇到过类似的问题。在我的设备上,我注意到:

  • 对于每对重复组,一个组始终包含 0 个联系人(ContactsContract.Groups.SUMMARY_COUNT),并且
  • 具有 > 0 个联系人的所有联系人组都有一个非空的 ContactsContract.Groups.NOTES 列。

我仍然不清楚为什么返回空组,但我通过选择非空组或具有非空注释列的组来解决这个问题。

希望这对您有所帮助!

关于android - 获取联系人组时重复条目 Android 4+,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16282628/

相关文章:

android - 房间数据库效率低下

android - 如何使用JNA调用C的_IOR宏?

android - 如何检查从具有多个联系人的用户联系人中删除了哪个号码?

android - 获取具有类型过滤功能的 Android 联系人,仅限于特定帐户

android map 应用程序在模拟器上工作但不在设备上

android - Android 应用程序的互联网访问——但仅限于单个域

java - 将联系人的照片写入vcf文件,android

Android 在发送短信时删除已选择的联系人

android - 使用游标获取联系人抛出 sqlite 异常

android - javax.mail.nosuchproviderexception smtp