android导入重复联系人,不能全部显示,可以确定的是都导入进去了,但是显示的只显示一个,怎么能让其全部显示出来?

解决方案 »

  1.   

    这个应该是android自身的一个bug,他在合并的时候回去调用compare方法对EntityDeltas进行一个比较,这时候会根据2个 raw_contacts的accountType进行比较,但是此时有可能你这2条记录  不在任何账户下  就会出现这样的问题。--eoeandroid
    我查到有人说是这个原因,怎么把compare方法去掉呢?
      

  2.   

    如果是重复联系人,数据时插入进去了,但是是公用的一个contacts._id,查询联系人详情的时候可以看到,怎么让其重新产生一个id呢 ?
      

  3.   

    从sim卡导出的话不会有这个问题,我用我G7从sim卡中导出联系人就有很多重名的,但是信息不一样而已。不知道你是从哪儿导入的?
      

  4.   

    送sd卡导入的vcard文件啊。一个vcard文件导入多次就会出现这种情况,你从sim卡导入两次也会出现这种情况
      

  5.   

    http://tupian.meinv01.com/meinvhbcms/upload/image/20100919-1/2.jpg
      

  6.   

    在文件Simcontacts.java中181行之前加一句
    builder.withValue(RawContacts.AGGREGATION_MODE,RawContacts.AGGREGATION_MODE_SUSPENDED);
    即可解决,欢迎交流
      

  7.   

    builder.withValue(RawContacts.AGGREGATION_MODE,RawContacts.AGGREGATION_MODE_SUSPENDED);
    这句话要加在哪里呢? 
      

  8.   

    android系统的联系人列表显示的是contacts表对应的联系人,
    而一条contacts记录可以对应多条raw_contacts表里的记录,raw_contacts表的记录才是对应一个具体的联系人,
    详情页会把raw_contacts表的内容都显示出来。这样就出现了你外面看只有一个,里面却看到两个的现象。
    你需要明白contacts表和raw_contacts表的关系。
      

  9.   

    你的可以排除重复的吗,可以的话告诉我下,a397927829@qq。com