所以我一直致力于为iOS 4和iPhone 4准备我的应用程序。安装了最新的Xcode和SDK,并且一直在调整图形等等。除了运行应用程序时遇到问题,所有工作都完美无缺。 iPad模拟器。我没有真正的iPad来测试。
我的应用程序使用ABUnknownPersonViewController,当我点击“创建新联系人”时它崩溃,但如果我点击“添加到现有联系人”,则工作很精细。很奇怪!!
当应用崩溃时,我在控制台中收到以下内容:
2010-10-21 13:57:25.873 Copy2contact[58432:207] *** Assertion failure in -[ABPropertyGroup propertyModelControllerAtIndex:], /SourceCache/AddressBookUI_Sim/AddressBookUI-643.49/ABPropertyGroup.m:228
2010-10-21 13:57:25.875 Copy2contact[58432:207] *** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: ''
2010-10-21 13:57:25.877 Copy2contact[58432:207] Stack: (
...
...
)
terminate called after throwing an instance of 'NSException'
这不会发生在iPhone模拟器或iPhone设备上,只会发生在iPad上。
以下是构建测试示例程序的方法:
在Xcode中创建一个新的基于导航的iPhone项目
将AddressBook和AddressBookUI框架添加到项目
将以下行添加到RootViewController.m的顶部:
#import <AddressBookUI/ABUnknownPersonViewController.h>
将以下内容添加到RootViewController.m中的viewDidLoad
:
[super viewDidLoad];
ABRecordRef personRef = ABPersonCreate();
ABUnknownPersonViewController* abNew = [[ABUnknownPersonViewController alloc] init];
CFErrorRef err = nil; // Should be released if set?
ABRecordSetValue(personRef, kABPersonFirstNameProperty, [NSString stringWithString:@"First"], &err) &&
ABRecordSetValue(personRef, kABPersonLastNameProperty, [NSString stringWithString:@"Last"], &err);
abNew.displayedPerson = personRef;
abNew.allowsActions = NO;
abNew.allowsAddingToAddressBook = YES;
[self.navigationController pushViewController:abNew animated:YES];
[abNew release];
CFRelease(personRef);
答案 0 :(得分:0)
我能够让iPad进行测试并验证这只发生在模拟器中。我打开了错误8596499