0

我有一系列用于联系详细信息的字典。我正在尝试将该记录添加到 中ABRecordRef,但我不明白它是如何工作的。这是我的代码:

for (int i = 0; i <= [contactArray count]; i++)
{
    ABRecordRef person = (ABRecordRef)[contactArray objectAtIndex:i];
    ABAddressBookAddRecord(addressBook, group, &error);
    ABAddressBookSave(addressBook, &error);
}

我正在尝试将此联系人记录添加到使用ABGroupAddMember. 现在我怎样才能从NSMutableArray. 任何帮助将不胜感激。谢谢你。

4

1 回答 1

0

没有内置功能。您将必须创建一个空记录,然后从字典中获取所有字段,然后将它们添加到记录中并保护它

那是烦人的手工工作...:D

我会选择 Erica 的 ABContactHelper:https ://github.com/erica/ABContactHelper

那么它只是

for(NSDictionary *d in recordArray) {
    ABContact *contact = [ABContact contactWithDictionary:d];
    ABGroupAddMember(theGroup, contact.record);
}

如果你喜欢手册:

for(NSDictionary *d in recordArray) {
    ABRecordRef person = ABPersonCreate();

    for(NSString *k in d.allKeys) {
        id v = d[k];
        //HERE call ABRecordSetValue with the right params depending on if the value is a NSString or NSArray or an image
    }

    ABGroupAddMember(theGroup, contact.record);
    CFRelease(person);
}

免责声明:内联输入但应该没问题

于 2013-05-02T08:35:36.783 回答