Archive for janvier 3rd, 2009

Getting contacts from adress book

Here is a simple to way to access to Iphone address book for Cocoa Iphone developers :

 // open the default address book. ABAddressBookRef m_addressbook = ABAddressBookCreate(); if (!m_addressbook) {     NSLog(@"opening address book"); } //get people and index CFArrayRef allPeople = ABAddressBookCopyArrayOfAllPeople(m_addressbook); CFIndex nPeople = ABAddressBookGetPersonCount(m_addressbook); //iterate on each person for (int i=0;i < nPeople;i++) {     ABRecordRef ref = CFArrayGetValueAtIndex(allPeople,i);     //get phone numbers and names     ABMultiValueRef phoneNumberProperty = ABRecordCopyValue(ref, kABPersonPhoneProperty);     NSArray* phoneNumbers = (NSArray*)ABMultiValueCopyArrayOfAllValues(phoneNumberProperty);     NSString* name = (NSString*)ABRecordCopyValue(ref, kABPersonFirstNameProperty);     CFRelease(phoneNumberProperty);     //Loop to display results     NSLog(@"Name = %@", name);     NSLog(@"Phone numbers = ");     for (int j=0; j<[phoneNumbers count]; j++) {         NSLog(@" phone -> %@", [phoneNumbers objectAtIndex:j]);     }     //release memory     [phoneNumbers release]; }