私はiPhoneの開発に不慣れです。私はアプリを開発しています。名簿から連絡先の詳細(名、メールID、電話番号など)をプログラムで取得する必要がありました。そして、これらの値は配列に格納されます。これはiamがうまく機能していますが、問題はnull連絡先が追加されていることです。つまり、名前だけで電子メールIDがない場合は、null値が追加されないようにする方法を意味します。これは私が使用しているコードです。
ABRecordRef ref;
ABAddressBookRef m_addressbook = ABAddressBookCreate();
CFArrayRef allPeople = ABAddressBookCopyArrayOfAllPeople(m_addressbook);
CFIndex nPeople = ABAddressBookGetPersonCount(m_addressbook);
NSLog(@" n people count values %ld",nPeople);
for (int i=0; i<nPeople; i++)
{
AFContacts *contactOfAPerson = [[AFContacts alloc] init];
ref = CFArrayGetValueAtIndex(allPeople,i);
[contactOfAPerson setEmail:(NSString *)ABRecordCopyValue(ref, kABPersonEmailProperty)];
[contactOfAPerson setFirstName:(NSString *)ABRecordCopyValue(ref, kABPersonFirstNameProperty)];
//[contactOfAPerson setPhoneNumber:(NSString *)ABRecordCopyValue(ref, kABPersonPhoneMobileLabel)];
[contactList addObject:contactOfAPerson];
[contactOfAPerson release];
}
CFRelease(ref);
}