I am trying to save the unsaved contacts through ABAddressBook using the following code:
CFErrorRef error = NULL;
if (ABAddressBookHasUnsavedChanges(addressBook)) {
ABAddressBookSave(addressBook, &error);
} else {
ABAddressBookRevert(addressBook);
}
If I try to save about 1000 contacts, it is taking more than one minute to perform the action. I have run the code in Time Profiler and it reports 92% of total time elapsed singly on ABAddressBookSave.
Please help me reduce the time complexity of my code.