ContentObserver for listening contact changes

好久不见. 提交于 2019-12-04 10:40:41

问题


I really don't understand why content observer listens the changes which is not related with the contact info.

I simply registered to the URI which I wanna listen the changes:

getContentResolver().registerContentObserver(ContactsContract.CommonDataKinds.Phone.CONTENT_URI, true, contactsObserver);

But after calling someone or texting to someone, it triggers and calls onChange method in ContentObserver. So I need to re-sync all the contact list with my application although I don't need to do.

Only field I am interested in:

  • ContactsContract.CommonDataKinds.Phone.CONTACT_ID
  • ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME
  • ContactsContract.CommonDataKinds.Phone.NUMBER

What kind of changes should I implement to listen the changes for this DB items?


回答1:


The Contacts database has a field ContactsContract.Contacts.TIMES_CONTACTED This field is updated every time you contact someone in your contact list.

It is even possible to update this field using your own app, which means, if you contact any contact using an app that updates this field, your onChange() method will be called.



来源:https://stackoverflow.com/questions/14707475/contentobserver-for-listening-contact-changes

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!