如何获取iPhone地址簿联系人的电子邮件作为NSStrings?

mar*_*cgg 5 iphone cocoa-touch objective-c abaddressbook

我知道电子邮件可以有多个值,但我不确定如何浏览它们.

我可以正确地找到一个人.

ABRecordRef person = // getting a person;
NSString* emails = (NSString *)ABRecordCopyValue(person, kABPersonEmailProperty);
Run Code Online (Sandbox Code Playgroud)

... 下一步是什么?如果我尝试打印emails我得到的变量:

Emails: <NSCFType: 0x4018d40>
Run Code Online (Sandbox Code Playgroud)

con*_*are 16

这是因为电子邮件不应该是字符串,而是数组.人们可以收到很多电子邮件!

ABMultiValueRef emails = ABRecordCopyValue(person, kABPersonEmailProperty);
CFStringRef email = ABMultiValueCopyValueAtIndex(emails, <INDEX>);
NSLog( (NSString *) email);
Run Code Online (Sandbox Code Playgroud)

以下是有关MultiValueLists可以执行的操作的一些文档