gpt4 book ai didi

iphone - 如何在 iPhone 应用程序中使用 ABAddressBookRef?

转载 作者:行者123 更新时间:2023-12-03 20:55:26 24 4
gpt4 key购买 nike

我想在 iPhone 应用程序之一中引用我的地址簿。我使用了下面的代码。但它显示[人数] = 0。

我的地址簿应用程序中有 3-4 个联系人,但 [人数] 返回零。

还有什么吗,我在这里失踪了吗?

代码是:

ABAddressBookRef addressBook = ABAddressBookCreate();

NSMutableArray *people = [[[(NSArray*)ABAddressBookCopyArrayOfAllPeople(addressBook) autorelease] mutableCopy]autorelease];
[people sortUsingFunction:(int (*)(id,id,void*)) ABPersonComparePeopleByName context:(void*)ABPersonGetSortOrdering()];
NSLog(@"count..%i",[people count]);

for(int i = 0 ; i < [people count]; i++){
ABRecordRef person = [people objectAtIndex:i];
//get phone no fill phone no into array
ABMultiValueRef multi = ABRecordCopyValue(person, kABPersonPhoneProperty);
if(multi!=NULL && ABMultiValueGetCount(multi)>0) {
NSLog(@"in value..");
}
else {
NSLog(@"no value");
}

}

谢谢

最佳答案

尝试一下 -

ABAddressBookRef addressBook = ABAddressBookCreate();
CFArrayRef people;
people = ABAddressBookCopyArrayOfAllPeople(HiByeGroup);

if (people){
CFArrayCreateMutableCopy(kCFAllocatorDefault,CFArrayGetCount(people),people);
NSInteger numberOfPersonsInAB=CFArrayGetCount(peopleMutable);

for (int i =0; i< numberOfPersonsInAB; i++) {
//your code
}
CFRelease(people);

更新正如 Jamon Holmgren 指出的,这个答案是旧的,并且 ABAddressBookCreate() 在 iOS6 中已被弃用。您需要使用 ABAddressBookCreateWithOptions() 来代替。祝你好运

关于iphone - 如何在 iPhone 应用程序中使用 ABAddressBookRef?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5401659/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com