接收联系人更改(添加,删除和更改)

Gia*_*rlo 5 android contacts contactscontract android-contacts contentobserver

每个联系人都没有时间戳吗?

我需要通过更改(添加,删除或更改)通知联系人.我已经实现了一个ContentObserver,但通过这种方法,我只能在联系人发生更改时收到通知,但我不知道哪个联系人已被修改!有什么建议?

om2*_*345 0

检查 ContactsContract.RawContacts 列

int DIRTY 
Run Code Online (Sandbox Code Playgroud)

读/写标志,表示VERSION已更改,该行需要由所属帐户同步。只要原始联系人发生更改,该值就会自动设置为“1”,除非 URI 指定了 CALLER_IS_SYNCADAPTER 查询参数。同步适配器应始终提供此查询参数以防止不必要的同步:用户更改服务器上的某些数据,同步适配器更新电话上的联系人(不带 CALLER_IS_SYNCADAPTER 标志)标志,该​​标志设置 DIRTY 标志,从而触发同步将更改带到服务器。

同步适配器使用此列在修改联系人时启动联系人同步。检查一下你是否从中得到了什么。