您的位置:首页 > 移动开发 > IOS开发

ios实现通讯录的查询与删除

2011-03-31 09:29 537 查看
os提供了对通讯录操作的组建,其中一个是直接操作通讯录,另一个是调用通讯录的UI组建。实现方法如下:

添加AddressBook.framework到工程中。



代码实现:

-(IBAction)onClickbutton:(id)sender
{
NSMutableArray* personArray =[[[NSMutableArray alloc] init] autorelease];
ABAddressBookRef addressBook =ABAddressBookCreate();
NSString*firstName,*lastName,*fullName;
personArray =(NSMutableArray*)ABAddressBookCopyArrayOfAllPeople(addressBook);
if([sender tag]==0){

for(id *person in personArray)
{
firstName =(NSString*)ABRecordCopyValue(person, kABPersonFirstNameProperty);
firstName =[firstName stringByAppendingFormat:@" "];
lastName =(NSString*)ABRecordCopyValue(person, kABPersonLastNameProperty);
fullName =[firstName stringByAppendingFormat:@"%@",lastName];
NSLog(@"===%@",fullName);
ABMultiValueRef phones =(ABMultiValueRef)ABRecordCopyValue(person, kABPersonPhoneProperty);
for(int i =0;i <ABMultiValueGetCount(phones); i++)
{
NSString*phone =(NSString*)ABMultiValueCopyValueAtIndex(phones, i);
NSLog(@"===%@",phone);
}
ABMultiValueRef mails =(ABMultiValueRef)ABRecordCopyValue(person, kABPersonEmailProperty);
for(int i =0;i <ABMultiValueGetCount(mails); i++)
{
NSString*mail =(NSString*)ABMultiValueCopyValueAtIndex(mails, i);
NSLog(@"==%@",mail);
}
}
}else{
//删除信息
//返回所有联系人到一个数组中
CFArrayRef personArray =ABAddressBookCopyArrayOfAllPeople(addressBook);
CFIndex personCount =ABAddressBookGetPersonCount(addressBook);
for(int i =0;i<personCount;i++){
ABRecordRefref=CFArrayGetValueAtIndex(personArray, i);
CFStringRef firstName1 =ABRecordCopyValue(ref, kABPersonFirstNameProperty);
CFStringRef lastName1 =ABRecordCopyValue(ref, kABPersonLastNameProperty);
NSString*contactFirstLast =[NSString stringWithFormat: @"%@%@",(NSString*)firstName1,(NSString*)lastName1];
if([contactFirstLast isEqualToString:@"徐梦"]){
//删除联系人
ABAddressBookRemoveRecord(addressBook,ref,nil);
}
}
//保存电话本
ABAddressBookSave(addressBook,nil);
//释放内存
//CFRelease(personRef);
//        CFRelease(addressbookRef);
}
}风之境地 java-javascript 蘑菇街女装
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐