【发布时间】:2024-01-17 18:49:01
【问题描述】:
我正在通过我的应用程序在 iphone 组中添加联系人。还有其他逻辑吗??
谁能告诉我如何检查组的存在???
我正在使用以下代码来检查组的存在,但可能是因为我的应用程序在 iphone 中崩溃的循环。
//ab=AddressBook 对象
CFArrayRef a = ABAddressBookCopyArrayOfAllGroups(ab);
for (CFIndex i = CFArrayGetCount(a)-1; i >= 0; i--)
{
ABRecordRef g = (ABRecordRef) CFArrayGetValueAtIndex(a, i);
CFStringRef s = (CFStringRef) ABRecordCopyValue(g, kABGroupNameProperty);
CFComparisonResult r = CFStringCompare((CFStringRef)name, s, 0);
CFRelease(s);
if (r == kCFCompareEqualTo)
{
group = CFRetain(g);
break;
}
}
CFRelease(a);
CFErrorRef err = nil;
if (!group)
{
group = ABGroupCreate();
ABRecordSetValue(group, kABGroupNameProperty, name, &err);
if (!err)
{
ABAddressBookAddRecord(ab, group, &err);
}
if (!err)
{
ABAddressBookSave(ab, &err);
}
}
if (err)
{
CFRelease(err);
}
【问题讨论】:
标签: iphone objective-c cocoa-touch ios4 iphone-sdk-3.0