Iphone 健全性检查:UIBarButtonim在尝试执行操作时崩溃

Iphone 健全性检查:UIBarButtonim在尝试执行操作时崩溃,iphone,cocoa-touch,uikit,uibarbuttonitem,Iphone,Cocoa Touch,Uikit,Uibarbuttonitem,我的一个用户报告说他的设备iPhone3GS发生了故障。相同类型的其他设备没有报告类似的行为。他给我发了一份事故日志,根据阅读,我不知道如何继续。我希望我没有错误地解释崩溃日志,但看起来我的操作还没有被调用 这就是我创建和建立uibarbuttonite的方式: - (void)viewDidLoad { [super viewDidLoad]; UIBarButtonItem *addButton = [[UIBarButtonItem alloc] initWithBarBu

我的一个用户报告说他的设备iPhone3GS发生了故障。相同类型的其他设备没有报告类似的行为。他给我发了一份事故日志,根据阅读,我不知道如何继续。我希望我没有错误地解释崩溃日志,但看起来我的操作还没有被调用

这就是我创建和建立uibarbuttonite的方式:

- (void)viewDidLoad {
    [super viewDidLoad];
    UIBarButtonItem *addButton = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemAdd  target:self action:@selector(addLog:)];
    self.navigationItem.rightBarButtonItem = addButton;
    [addButton release];
}
这是我的行动方法:

- (IBAction)addLog:(id)sender {
    MyViewController *myController = [[MyViewController alloc] initWithNibName:@"MyNib" bundle:nil];
    UINavigationController *subNavigationController = [[UINavigationController alloc] initWithRootViewController: myController];
    [self presentModalViewController:subNavigationController animated:YES];
    [myController release];
    [subNavigationController release];
}
这是崩溃日志:

Exception Type: EXC_CRASH (SIGABRT) Exception Codes: 0x00000000, 0x00000000Crashed Thread: 0 Thread 0 Crashed: 0 libSystem.B.dylib 0x0007e98c __kill + 81 libSystem.B.dylib 0x0007e97c kill + 4 2 libSystem.B.dylib 0x0007e96e raise + 10 3 libSystem.B.dylib 0x0009361a abort + 34 4 MyApp 0x000042e8 0x1000 + 13032 5 CoreFoundation 0x00058ede -[NSObject performSelector:withObject:withObject:] + 18 6 UIKit 0x0004205e -[UIApplication sendAction:to:from:forEvent:] + 78 7 UIKit 0x00094d4e -[UIBarButtonItem(Internal) _sendAction:withEvent:] + 86 8 CoreFoundation 0x00058ede -[NSObject performSelector:withObject:withObject:] + 18 9 UIKit 0x0004205e -[UIApplication sendAction:to:from:forEvent:] + 78 10 UIKit 0x00041ffe -[UIApplication sendAction:toTarget:fromSender:forEvent:] + 26 11 UIKit 0x00041fd0 -[UIControl sendAction:to:forEvent:] + 32 12 UIKit 0x00041d2a -[UIControl(Internal) _sendActionsForEvents:withEvent:] + 350 13 UIKit 0x0004263e -[UIControl touchesEnded:withEvent:] + 330 14 UIKit 0x00041656 -[UIWindow _sendTouchesForEvent:] + 318 15 UIKit 0x00041032 -[UIWindow sendEvent:] + 74 异常类型:EXC_崩溃(SIGABRT) 异常代码:0x00000000,0x00000000崩溃线程:0 线程0崩溃: 0 libSystem.B.dylib 0x0007e98c__kill+81 libSystem.B.dylib 0x0007e97c kill+4 2 libSystem.B.dylib 0x0007e96e升高+10 3 libSystem.B.dylib 0x0009361a中止+34 4 MyApp 0x000042e8 0x1000+13032 5 CoreFoundation 0x00058ede-[NSObject性能选择器:withObject:withObject:+18 6 UIKit 0x0004205e-[UIApplication sendAction:to:from:forEvent:+78 7 UIKit 0x00094d4e-[UIBarButtonItem(内部)\发送操作:withEvent:+86 8 CoreFoundation 0x00058ede-[NSObject性能选择器:withObject:withObject:+18 9 UIKit 0x0004205e-[UIApplication sendAction:to:from:forEvent:+78 10 UIKit 0x00041ffe-[UIApplication sendAction:toTarget:fromSender:forEvent:][26 11 UIKit 0x00041fd0-[UIControl发送操作:发送到:forEvent:+32 12 UIKit 0x00041d2a-[UIControl(内部)\u发送操作预防:withEvent::+350 13 UIKit 0x0004263e-[UIControl触摸已结束:带事件:][330 14 UIKit 0x00041656-[UIWindow\u sendTouchesForEvent:+318 15 UIKit 0x00041032-[UIWindow sendEvent:+74
碰撞报告没有符号化。由于线路原因,我可以拨打:

4   MyApp                               0x000042e8 0x1000 + 13032
在符号化崩溃报告中,此行将显示发生崩溃的方法

创建发布版本时,调试符号将从二进制文件中剥离。生成后,需要保存生成文件夹中的.dSYM文件和应用程序包

需要这些符号来表示碰撞报告


如果已保存这些文件,则需要确保它们位于spotlight可以访问的位置。如果崩溃报告是由用户发送给您的,请尝试将其拖到Xcode的“组织者”窗口中的“崩溃报告”选项卡中。这应该尝试象征崩溃报告(但只有在您有.dSYM和应用程序包的情况下才会成功)。

谢谢!我能用这些信息确定是什么导致了这次车祸。没问题。但是请记住,对于将来的版本,请确保保存.dSYMs和应用程序包。Xcode 3.2.2可能有助于强制执行此功能的功能;)