iCodes
iCodes

Reputation: 1457

How to fetch contacts from AddressBook and store it in array in iOS 6?

I am trying to fetch first name of contact in address book and then to store it in an array.However i am not able to store the contact in array. This is what i tried.

 -(void)fetchAddressBook
 {
   ABAddressBookRef UsersAddressBook = ABAddressBookCreateWithOptions(NULL, NULL);

  //contains details for all the contacts
  CFArrayRef ContactInfoArray = ABAddressBookCopyArrayOfAllPeople(UsersAddressBook);

  //get the total number of count of the users contact
  CFIndex numberofPeople = CFArrayGetCount(ContactInfoArray);

  //iterate through each record and add the value in the array
    for (int i =0; i<numberofPeople; i++) {
    ABRecordRef ref = CFArrayGetValueAtIndex(ContactInfoArray, i);
    ABMultiValueRef names = (__bridge ABMultiValueRef)((__bridge NSString*)ABRecordCopyValue(ref, kABPersonFirstNameProperty));

     NSLog(@"name from address book = %@",names);  // works fine.

     NSString *contactName = (__bridge NSString *)(names);
    [self.reterivedNamesMutableArray addObject:contactName];
     NSLog(@"array content = %@", [self.reterivedNamesMutableArray lastObject]);//shows null

}
}

Upvotes: 0

Views: 735

Answers (1)

iCodes
iCodes

Reputation: 1457

Done .... the array needed to be initialised actually.

Upvotes: 1

Related Questions