我尝试做的是,如果联系人 SocialProfileProperty ,那么获取所有联系人并依赖,在获得所有具有 SocialProfileProperty 的联系人后,我将进行简单的过滤要知道它是 Facebook,Twitter,..
在我发布这个问题之前,我整整一天试图找到解决这个问题的方法吗?
但是允许返回0 ??
ABAddressBookRef addressBook;
CFErrorRef *erer = NULL;
addressBook = ABAddressBookCreateWithOptions(NULL, erer);
CFArrayRef _allPeople = ABAddressBookCopyArrayOfAllPeople(addressBook);
CFIndex _nPeople = ABAddressBookGetPersonCount(addressBook);
NSMutableArray *socialArray = [[NSMutableArray alloc] init];
ABMultiValueRef socialProfiles;
for (int i=0;i<_nPeople; i++) {
ABRecordRef _person=CFArrayGetValueAtIndex( _allPeople,i);
NSNumber *recordId = [NSNumber numberWithInteger:ABRecordGetRecordID(_person)];
NSLog(@"%@",recordId);
socialProfiles = ABRecordCopyValue(_person, kABPersonSocialProfileProperty);
if (ABMultiValueGetCount(socialProfiles)>0) {
[socialArray addObject:(__bridge id)(socialProfiles)];
}
}
NSLog(@"%d",socialArray.count);
答案 0 :(得分:0)
允许返回0,直到用户使用native填充社交联系人,这样做
直到他试图删除Facebook帐户时才会发生,例如在那种情况下出现警报
并询问你是否想要联系或不联系???其他明智的回报0值:)
因此,在用户使用本机联系人填充FaceBook联系人之前,此方法永远不会有效。