- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试在我的联系人列表中进行搜索,但是如果从应用程序商店新鲜执行,或者从 TestFlight 执行(正如我现在测试的那样),此代码会崩溃。如果我卸载该应用程序并点击“运行”,它就会完美运行。但是直接从 TestFlight 执行它会崩溃,崩溃日志指出它在 i 的行中失败了
BOOL found = NO;
NSString *name;
int i = 0;
NSLog(@"Hay %i", [people count]);
while (!found && i < [people count]) {
ABRecordRef person = (ABRecordRef)[people objectAtIndex:i];
ABMultiValueRef multi = ABRecordCopyValue(person, kABPersonPhoneProperty);
NSLog(@"address: %@", multi);
//Freshly from TestFlight this prints "address: Denis" wich is a contac, executed from Xcode it prints, address: ABMultiValueRef 0x1fb68400 with 1 value(s), so I see here's the problem
if([[(NSMutableString*)ABMultiValueCopyValueAtIndex(multi, 0) componentsSeparatedByCharactersInSet:[[NSCharacterSet decimalDigitCharacterSet] invertedSet]] componentsJoinedByString:@""]){
NSMutableString *tempPhone = [[NSMutableString alloc]initWithString:[[(NSMutableString*)ABMultiValueCopyValueAtIndex(multi, 0) componentsSeparatedByCharactersInSet:[[NSCharacterSet decimalDigitCharacterSet] invertedSet]] componentsJoinedByString:@""]];
NSLog(@"telf: %@", tempPhone);
int length = [tempPhone length] - 9;
NSString *tempPhone2;
if(length >= 0){
tempPhone2 = [[NSString alloc]initWithString:[tempPhone substringFromIndex:length]];
}
NSLog(@"el telf: %@ y nombre %@ int %i",tempPhone2, [NSString stringWithFormat:@"%@ %@",ABRecordCopyValue(person, kABPersonFirstNameProperty) ? (NSString *)ABRecordCopyValue(person, kABPersonFirstNameProperty) : @"",ABRecordCopyValue(person, kABPersonLastNameProperty) ? (NSString *)ABRecordCopyValue(person, kABPersonLastNameProperty) : @""], i);
if([[key objectForKey:@"phone"] isEqualToString:tempPhone2]){
name = [NSString stringWithFormat:@"%@ %@",ABRecordCopyValue(person, kABPersonFirstNameProperty) ? (NSString *)ABRecordCopyValue(person, kABPersonFirstNameProperty) : @"",ABRecordCopyValue(person, kABPersonLastNameProperty) ? (NSString *)ABRecordCopyValue(person, kABPersonLastNameProperty) : @""];
found = YES;
}
}
i++;
}
在这一行 NSLog(@"address: %@", multi);
当 TestFlight 的 Fresh“address: Denis”是一个联系人时,它会打印,从 Xcode 执行它打印,“地址:ABMultiValueRef 0x1fb68400 with 1 value(s)...”,所以我看到了问题所在,即差异,我不明白的是为什么不同,你能告诉我为什么吗?
最佳答案
您似乎没有正确访问地址簿数据。我明白,正确的方法是这样的:
ABMultiValueRef multi = ABRecordCopyValue(person, kABPersonPhoneProperty);
NSString* label;
for (int i = 0; i < ABMultiValueGetCount(multi); i++) {
label = (NSString*)ABMultiValueCopyLabelAtIndex(multi, i);
... <DO YOUR PROCESSING on label>
}
希望这有帮助。
关于ios - ABRecordCopyValue 不同的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14162439/
我正在尝试在我的联系人列表中进行搜索,但是如果从应用程序商店新鲜执行,或者从 TestFlight 执行(正如我现在测试的那样),此代码会崩溃。如果我卸载该应用程序并点击“运行”,它就会完美运行。但是
我正在使用这个简单的代码来获取 ios 7 中地址簿的所有联系人。我的地址中有 155 个联系人。当我记录人们的名字时,我从我的地址簿中获得了 34 个正确的名字(显然是随机选择的),15 个名字为空
本地址簿中有没有姓氏的联系人时,Swift 中的这行代码会给我带来问题。 我试过很多方法都无济于事。我可以使用某种 try catch 语句或错误处理吗?或者检查 AnyObject 是否为 null
我在获取随机人变量的生日或电子邮件时遇到 EXC_BAD_ACCESS 问题。我尝试使用以下代码,但当我使用 dispatch_async 运行它时失败了。 ABAddressBook address
我正在尝试从 iPhone 通讯录中检索数据,但遇到了一些问题。 首先,我有一个包含所有联系人的数组 (self.allContacts): ABAddressBookRef abRef = ABAd
我正在访问地址簿并有这一行并且正在使用 ARC 进行编译: ABMultiValueRef phoneNums = ABRecordCopyValue(person, kABPersonPhoneP
我正在尝试获取这样的联系人列表: CFErrorRef *error = nil; ABAddressBookRef addressBook = nil; __block BOOL accessGra
在我的应用程序中,我必须检索用户联系人的某些属性。例如,我需要检索联系人的名字、姓氏、中间名、昵称、组织、职务、部门、生日、电子邮件等。我有一些方法来检索这些属性,但只有几个方法有效,尽管他们都非常相
我目前正在使用 TestFlight 来获取有关我们应用测试版的远程崩溃报告。我收到了堆栈跟踪,但我不太确定如何缩小问题范围。这是我收到的报告: 0 Holler 0x0003f2a1 Holler
我正在将我一年前为 iOS 6 编写的应用程序升级到 iOS 7/8,我收到了这个 EXC_BAD_ACCESS 错误,这在我的旧版本中从未发生过。 在我的应用程序中,我试图获取某些联系信息,例如名字
我正在使用以下代码行... NSString *clientFirstName = (NSString *)ABRecordCopyValue(person, kABPersonFirstNamePr
经过大量搜索,我遇到了一个(我相信)尚未明确解决的问题。 我的目标是从手机的联系人列表中提取电话号码。已授予权限。我使用这段代码从给定联系人(变量“人”)中提取数据: let unmanagedPho
我有一个问题很头疼,我只是创建方法: -(void) main{ for (int i = 0; i< 100;i++) { [self getPhoneOfCont
我的项目中有以下代码 - (BOOL)peoplePickerNavigationController: (ABPeoplePickerNavigationController *)peoplePic
我是一名优秀的程序员,十分优秀!