我目前正在從地址簿中獲取所有聯繫人,並且希望保存我遇到特定聯繫人的最後日期。所以我取的日曆在同一時間如下:ABRecordCopyValue()SIGSEGV
for (EKEvent* event in events) {
for (EKParticipant* attende in [event attendees]) {
ABRecordRef record = [attende ABRecordWithAddressBook:addressBook];
if([contact.name isEqualToString:[NSString stringWithFormat:@"%@ %@", (__bridge NSString *)ABRecordCopyValue(record, kABPersonFirstNameProperty), (__bridge NSString *)ABRecordCopyValue(record, kABPersonLastNameProperty)]]){
contact.lastMet = [NSString stringWithFormat:@"%@",[formatter stringFromDate:event.endDate]];
}
}
}
可悲的是代碼崩潰在與信號SIGSEGV「如果」語句來行,崩潰日誌表明,與ABRecordCopyValue發生故障()。 ..任何建議如何解決這個問題?
當出現錯誤時記錄爲零嗎? 'ABRecordWithAddressBook'的返回值是參與者的地址簿記錄,如果沒有找到記錄,則返回nil。我猜如果記錄爲零,複製操作可能會失敗。 – ikuramedia 2012-01-16 17:51:40