微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

android – 插入新的原始联系人时强行创建新联系人

根据官方文档,当新的RawContact插入到联系人的数据库中时,系统会启动聚合机制以查找将与其插入的RawContact聚合的联系人.

如果联系人数据库中存在类似的联系信息,则插入的RawContact将与现有联系人聚合,如果没有此类信息,系统将创建新的联系人,并将插入的RawContact聚合在一起.

我已经查看了ContactsContract.AggregationExceptions和ContactsContract.Contacts.AggregationSuggestions但是没有找到任何可以帮助我弄清楚如何在我的应用程序中插入新的RawContact时强制告诉系统创建新联系人的信息.

如果有人知道如何做到这一点,我很乐意得到你的建议.

谢谢

解决方法

要创建新联系人,请在ContactsContract.RawContacts中插入ACCOUNT_NAME和ACCOUNT_TYPE的值,然后获取新行的_ID.然后在将联系人数据插入ContactsContract.Data时使用此_ID填写RAW_CONTACT_ID.

ContactsContract.RawContacts中的新_ID不应该已经存在,因此在ContactsContract.Data中插入/更新相应数据之前不会聚合.

ContactsContract.Contacts只是一个自动聚合表,可以简化数据查询.你不应该直接改变它.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐