Help. I want to do a simple application to update ALL Phone Labels to another specific. I need to change all (work, home, iphone) to "Sync".
I tried to do this, but didn't work. Somebody can help me, please?
ABAddressBookRef addressBookRef = ABAddressBookCreateWithOptions(NULL, NULL);
//ABRecordRef record = ABAddressBookGetPersonWithRecordID(addressBookRef, ABRecordGetRecordID(record));
//NSString *addressBookNum;
NSString *phoneNumber;
NSString *tagLabel;
if (ABAddressBookGetAuthorizationStatus() == kABAuthorizationStatusNotDetermined) {
ABAddressBookRequestAccessWithCompletion(addressBookRef, ^(bool granted, CFErrorRef error) {
});
}
else if (ABAddressBookGetAuthorizationStatus() == kABAuthorizationStatusAuthorized) {
CFErrorRef *error = NULL;
ABAddressBookRef addressBook = ABAddressBookCreateWithOptions(NULL, error);
CFArrayRef allPeople = ABAddressBookCopyArrayOfAllPeople(addressBook);
CFIndex numberOfPeople = ABAddressBookGetPersonCount(addressBook);
for(int i = 0; i < numberOfPeople; i++) {
ABRecordRef person = CFArrayGetValueAtIndex( allPeople, i );
ABMutableMultiValueRef phoneNumbers = ABRecordCopyValue(person, kABPersonPhoneProperty);
[[UIDevice currentDevice] name];
for (CFIndex k = 0; i < ABMultiValueGetCount(phoneNumbers); k++) {
phoneNumber = (__bridge_transfer NSString *) ABMultiValueCopyValueAtIndex(phoneNumbers, k);
tagLabel = (__bridge NSString*) ABMultiValueCopyLabelAtIndex(phoneNumbers, k);
CFStringRef newTagLabel = (CFStringRef)@"Sync";
ABMultiValueReplaceLabelAtIndex(phoneNumbers, newTagLabel, k);
ABAddressBookSave(person, (CFErrorRef *) error);
}
}
}
else {
// Send an alert telling user to change privacy setting in settings app
}