iOS - ABAddressBook - добавить свойство к существующему контакту

Я хочу, чтобы мой код добавил одно и то же свойство к некоторым контактам. Я видел это на сайте разработчиков Apple, но я не мог заставить его работать. Я не против, если моя собственность будет иметь тип комментария или kABPersonInstantMessageProperty тип.

Моя цель - пометить некоторые контакты флажком. У меня есть массив телефонных номеров, которые я хочу отметить в контактах. Может ли кто-нибудь показать пример того, как я могу это сделать?

Мой код (это предполагает добавление свойства "ТЕСТ" к первому контакту - в моем понимании):

- (void)addPropertyTest {
    ABMutableMultiValueRef multi = ABMultiValueCreateMutable(kABMultiStringPropertyType);
    CFErrorRef anError = NULL;
    ABMultiValueIdentifier multivalueIdentifier;
    bool didAdd, didSet;

// Here, multivalueIdentifier is just for illustration purposes; it isn't
// used later in the listing.  Real-world code can use this identifier to
// reference the newly-added value.
    didAdd = ABMultiValueAddValueAndLabel(multi, @"TEST",
                                          kABPersonInstantMessageServiceKey, &multivalueIdentifier);
    if (!didAdd) {/* Handle error here. */}

    ABRecordRef aRecord = (__bridge ABRecordRef)([_allContacts objectAtIndex:0]);
    didSet = ABRecordSetValue(aRecord, kABPersonPhoneProperty, multi, &anError);
    if (!didSet) {/* Handle error here. */}
    CFRelease(multi);
}

0 ответов

Другие вопросы по тегам