ios 通讯录

添加到通讯录

 1 //添加到通讯录
 2 -(IBAction)addToContact
 3 {
 4     ABAddressBookRef iPhoneAddressBook = ABAddressBookCreate();        
 5     ABRecordRef newPerson = ABPersonCreate();
 6     CFErrorRef error = NULL; 
 7     ABRecordSetValue(newPerson, kABPersonFirstNameProperty, @"John", &error);
 8     ABRecordSetValue(newPerson, kABPersonLastNameProperty, @"Doe", &error);
 9     ABRecordSetValue(newPerson, kABPersonOrganizationProperty, @"Model Metrics", &error);
10     ABRecordSetValue(newPerson, kABPersonJobTitleProperty, @"Senior Slacker", &error);
11     
12     //phone number
13     ABMutableMultiValueRef multiPhone = ABMultiValueCreateMutable(kABMultiStringPropertyType);
14     ABMultiValueAddValueAndLabel(multiPhone, @"1-555-555-5555", kABPersonPhoneMainLabel, NULL);
15     ABMultiValueAddValueAndLabel(multiPhone, @"1-123-456-7890", kABPersonPhoneMobileLabel, NULL);            
16     ABMultiValueAddValueAndLabel(multiPhone, @"1-987-654-3210", kABOtherLabel, NULL);        
17     ABRecordSetValue(newPerson, kABPersonPhoneProperty, multiPhone,&error);
18     CFRelease(multiPhone);
19     
20     //email
21     ABMutableMultiValueRef multiEmail = ABMultiValueCreateMutable(kABMultiStringPropertyType);
22     ABMultiValueAddValueAndLabel(multiEmail, @"johndoe@modelmetrics.com", kABWorkLabel, NULL);
23     ABRecordSetValue(newPerson, kABPersonEmailProperty, multiEmail, &error);
24     CFRelease(multiEmail);
25     
26     //address
27     ABMutableMultiValueRef multiAddress = ABMultiValueCreateMutable(kABMultiDictionaryPropertyType);        
28     NSMutableDictionary *addressDictionary = [[NSMutableDictionary alloc] init];        
29     [addressDictionary setObject:@"750 North Orleans Street, Ste 601" forKey:(NSString *) kABPersonAddressStreetKey];
30     [addressDictionary setObject:@"Chicago" forKey:(NSString *)kABPersonAddressCityKey];
31     [addressDictionary setObject:@"IL" forKey:(NSString *)kABPersonAddressStateKey];
32     [addressDictionary setObject:@"60654" forKey:(NSString *)kABPersonAddressZIPKey];        
33     ABMultiValueAddValueAndLabel(multiAddress, addressDictionary, kABWorkLabel, NULL);
34     ABRecordSetValue(newPerson, kABPersonAddressProperty, multiAddress,&error);
35     CFRelease(multiAddress);        
36     
37     ABAddressBookAddRecord(iPhoneAddressBook, newPerson, &error);
38     ABAddressBookSave(iPhoneAddressBook, &error);
39     if (error != NULL) 
40     {                
41         NSLog(@"Danger Will Robinson! Danger!");                
42     }
43 }
posted @ 2012-07-26 11:55  暖流  阅读(407)  评论(0编辑  收藏  举报