我们可以从iPhone的联系人列表中访问emailids吗?

我们可以通过代码从iPhone联系人列表中访问每个联系人的所有电子邮件ID吗?

您将通过给定的代码获得单个电子邮件ID。

ABAddressBookRef addressBook = ABAddressBookCreate(); CFArrayRef people = ABAddressBookCopyArrayOfAllPeople(addressBook); NSString *contactName = lblTitle.text; for(int i = 0;i<ABAddressBookGetPersonCount(addressBook);i++) { ABRecordRef person = CFArrayGetValueAtIndex(people, i); NSString *strEmail = [arContactData valueForKey:@"Email"]; NSMutableArray *arEmailList = [[NSMutableArray alloc] init]; ABMultiValueRef emails = ABRecordCopyValue(person, kABPersonEmailProperty); for(CFIndex idx = 0; idx < ABMultiValueGetCount(emails); idx++) { CFStringRef emailRef = ABMultiValueCopyValueAtIndex(emails, idx); NSString *strLbl = (NSString*)ABAddressBookCopyLocalizedLabel (ABMultiValueCopyLabelAtIndex (emails, idx)); NSDictionary *dicTemp = [[NSDictionary alloc]initWithObjectsAndKeys:strEmail,@"value", strLbl,@"label", nil]; [arEmailList addObject:dicTemp]; } } 

当然,使用ABAdressBook类:

ABAddressBookRef addressBook = ABAddressBookCreate(); NSArray * allPeople =(NSArray *)ABAddressBookCopyArrayOfAllPeople(addressBook);

现在你拥有allPeople数组中的所有联系人,然后通过键获取电子邮件。