真机测试获取系统电话簿

在Build Phases的Link Binary  With  中添加俩个框架框架:AddressBook、AddressBookUI

在类中导入这样俩个头文件#import <AddressBook/AddressBook.h>

                    #import <AddressBookUI/AddressBookUI.h>

遵守协议ABPeoplePickerNavigationControllerDelegate

ABPeoplePickerNavigationController *peoplePicker = [[ABPeoplePickerNavigationController alloc] init];
peoplePicker.peoplePickerDelegate = self;
[self presentViewController:peoplePicker animated:YES completion:nil];


#pragma mark - ABPeoplePickerNavigationControllerDelegate协议方法
-( BOOL )peoplePickerNavigationController:(ABPeoplePickerNavigationController *)peoplePicker shouldContinueAfterSelectingPerson:(ABRecordRef)person property:(ABPropertyID)property identifier:(ABMultiValueIdentifier)identifier{
     
     ABMultiValueRef valuesRef = ABRecordCopyValue(person, kABPersonPhoneProperty);
     CFIndex index = ABMultiValueGetIndexForIdentifier(valuesRef,identifier);
     //电话号码
     CFStringRef telValue = ABMultiValueCopyValueAtIndex(valuesRef,index);
     
     //读取firstname
     //获取个人名字(可以通过以下两个方法获取名字,第一种是姓、名;第二种是通过全名)。
     //第一中方法
     //    CFTypeRef firstName = ABRecordCopyValue(person, kABPersonFirstNameProperty);
     //    CFTypeRef lastName = ABRecordCopyValue(person, kABPersonLastNameProperty);
     //    //姓
     //    NSString * nameString = (__bridge NSString *)firstName;
     //    //名
     //    NSString * lastString = (__bridge NSString *)lastName;
     
     //第二种方法:全名
     CFStringRef anFullName = ABRecordCopyCompositeName(person);
     [ self dismissViewControllerAnimated: YES completion:^{
         
         NSLog (@ "name %@,phone %@" ,anFullName,(__bridge NSString *)telValue);
         //去掉-
         NSLog (@ "%@" ,[(__bridge NSString *)telValue stringByReplacingOccurrencesOfString:@ "-" withString:@ "" ]);
     }];
     
     [ self dismissViewControllerAnimated: YES completion: nil ];
     
     return NO ;
}
//Cancel 按钮
-( void )peoplePickerNavigationControllerDidCancel:(ABPeoplePickerNavigationController *)peoplePicker
{
     [ self dismissViewControllerAnimated: YES completion: nil ];
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值