2
我有一个使用AddressBook.framework并使用Core Data存储这些联系人的iPhone应用程序。为了确保在更新地址簿时更新我自己的数据库(无论是通过MobileMe还是在我自己的应用程序中编辑),我正在订阅地址簿何时更新的通知。我在启动时打电话给我:不拨打地址簿回拨
ABAddressBookRef book = ABAddressBookCreate();
ABAddressBookRegisterExternalChangeCallback(book, addressBookChanged, self);
哪个(据说)在任何编辑时调用它。我有一个允许编辑的ABPersonViewController,并且addressBookChanged似乎永远不会被调用。
void addressBookChanged(ABAddressBookRef reference, CFDictionaryRef dictionary, void *context) {
// The contacts controller we need to call
ContactsController *contacts = (ContactsController *)context;
// Sync with the Address Book
[contacts synchronizeWithAddressBook:reference];
}
是否有任何理由不被调用?