In my iPhone app, I have a collection of contacts from the iPhone address book, whose ABRecordIDs are stored via Core Data. I want to keep track of any changes made to them in and out of my app. Currently, on startup, I loop through all the ABRecordIDs I have, checking for any updates. This is horribly inefficient, of course.
Is there a better way to do this? I'm looking at ABAddressBookRegisterExternalChangeCallback
, but I'm wondering if this will report changes made outside of my app. For example, if I exit the app, edit one or more contacts in the addressbook, and then reopen the app, will I get a notification of the changes?
Any help would be very much appreciated! Thanks in advance!