通讯录处理

2016-10-24  本文已影响0人  Sam_Zhou

/**

获取通讯录

**/
-(void)getAddressBookList{
NSMutableArray *array = [NSMutableArray array];//接受所有的人信息
ABAddressBookRef book = ABAddressBookCreateWithOptions(NULL, NULL);
//请求通讯录权限
ABAddressBookRequestAccessWithCompletion(book, ^(bool granted, CFErrorRef error) {
//把所有的联系人复制到数组中
NSArray *peopleArray = (__bridge NSArray *)ABAddressBookCopyArrayOfAllPeople(book);

    for (int i = 0; i < peopleArray.count; i++) {
        ContactsModel *model = [[ContactsModel alloc]init];//每个人数据模型
        ABRecordRef person = (__bridge ABRecordRef)([peopleArray objectAtIndex:i]);
        //获得名字
        NSString *name = (__bridge NSString *)ABRecordCopyCompositeName(person);
        model.name = name;
        if (name) {
            //获得电话号码
            ABMultiValueRef tmpPhones = ABRecordCopyValue(person, kABPersonPhoneProperty);
            if (tmpPhones!=nil&&(__bridge NSObject*)tmpPhones!=[NSNull null]) {
                NSMutableArray *phoneArray = [NSMutableArray array];
                for(NSInteger j = 0; j < ABMultiValueGetCount(tmpPhones); j++){
                    
                    NSString *tmpPhoneIndex = (__bridge NSString*)ABMultiValueCopyValueAtIndex(tmpPhones, j);
                    
                    NSString *phone = [self formatPhoneNum:tmpPhoneIndex];
                    [phoneArray addObject:phone];//添加多个号码

// ABMultiValueRef ref = ABRecordCopyValue(person, kABPersonPhoneProperty);
// //获得昵称
// NSString* tmpNickname = (__bridge NSString)ABRecordCopyValue(person, kABPersonNicknameProperty);
// //获取的联系人单一属性:公司名字
// NSString
tmpCompanyname = (__bridge NSString)ABRecordCopyValue(person, kABPersonOrganizationProperty);
// //获取的联系人单一属性:邮箱
// NSString
tmpEmail = (__bridge NSString*)ABMultiValueCopyValueAtIndex(ref, 0);

                }
                model.phonesArray = phoneArray;
            }
        }
        [array addObject:model];
    }
    //处理数据  数组装载模型
    
    [self handleContactsDataWithAddressBookList:array];
});

}
//将通讯录分组装进字典处理展示

}
//将传过来的字符串转成拼音

上一篇 下一篇

猜你喜欢

热点阅读