У меня странная проблема, когда я регистрирую свое iOS-приложение для прослушивания изменений в адресной книге телефона. Правильный метод вызывается, когда что-то меняется в адресной книге, но вызывается от 2 до 6 раз.
Когда объект создается (одиночный, поэтому только один объект), я регистрируюсь для уведомлений с помощью этого кода:
ABAddressBookRegisterExternalChangeCallback(notificationAddressBook, addressBookChanged, (__bridge_retained void *)self);
Вызываемый метод выглядит следующим образом:
void addressBookChanged(ABAddressBookRef ab, CFDictionaryRef info, void *context){
ABAddressBookRevert(ab);
NSLog(@"ADDRESSBOOK CHANGED");
[phoneBookCopy updateCopy];
}
Есть идеи, как это решить?