【发布时间】:2011-07-26 19:39:40
【问题描述】:
我正在处理联系人备份和同步。
目标是将所有联系人的所有详细信息发送到服务器(自定义协议定义)作为备份。
在应用程序的初始启动期间,所有联系人将排队并发送到服务器。 之后,后台服务将一直运行,它会监听新的联系人添加/联系人更新,并且这个新/更新的联系人将由后台服务发送到服务器。
我正在使用RawContactsEntity 获取记录。
我尝试在 RawContacts/Data 表上使用ContentObserver 来获取联系人添加或联系人更改的通知。但是,AFAIK,ContentObserver 会通知 (onChange()) 整个表中的更改数据,而不是单个记录的 ID。
现在我的问题是,如何获得更改/新记录的确切 ID?
我想创建一个备份表来与本地联系人表进行比较并获取更改的记录。但是随着触点数量的增加,性能会急剧下降,这也会影响电池寿命。
您能否建议我,从性能和内存使用的角度来看,实现此联系人备份操作的最佳方式? 联系人同步操作还有其他方法吗?
如果有人可以分享可以帮助我的示例,那将非常有帮助。
【问题讨论】:
标签: android contacts android-contacts contentobserver rawcontacts