2012-09-09 31 views
0

我有我的当前iPhone应用程序的崩溃日志是象征性的,但我无法破译问题仍然存在。GameCenter功能崩溃的应用程序 - 任何人都可以帮助解决?

基本问题是,在某些设备(特别是较旧的设备)我的应用程序崩溃回到主屏幕。这似乎是用户在一段时间后回到我的游戏 - 这启动了游戏中心的登录过程。我已经粘贴下面的崩溃日志的相关部分:

Exception Type: EXC_BAD_ACCESS (SIGSEGV) 
Exception Codes: KERN_INVALID_ADDRESS at 0x2e000000 
Crashed Thread: 0 

Thread 0 name: Dispatch queue: com.apple.main-thread 
Thread 0 Crashed: 
0 libobjc.A.dylib     0x37c11f7e objc_msgSend + 22 
1 Transfer Quiz     0x000023c4 -[GameCenterManager callDelegate:withArg:error:] (GameCenterManager.m:113) 
2 Transfer Quiz     0x0000230c __60-[GameCenterManager callDelegateOnMainThread:withArg:error:]_block_invoke_0 (GameCenterManager.m:103) 
3 libdispatch.dylib    0x346fdc52 _dispatch_call_block_and_release + 6 
4 libdispatch.dylib    0x346ffee0 _dispatch_main_queue_callback_4CF$VARIANT$mp + 188 
5 CoreFoundation     0x358432a6 __CFRunLoopRun + 1262 
6 CoreFoundation     0x357c649e CFRunLoopRunSpecific + 294 
7 CoreFoundation     0x357c6366 CFRunLoopRunInMode + 98 
8 GraphicsServices    0x37462432 GSEventRunModal + 130 
9 UIKit       0x332d2cce UIApplicationMain + 1074 
10 Transfer Quiz     0x000030d4 main (main.m:16) 
11 Transfer Quiz     0x000021a8 start + 32 

这里是GameCenterManager callDelegate下面的代码:

- (void) callDelegate: (SEL) selector withArg: (id) arg error: (NSError*) err 
{ 
assert([NSThread isMainThread]); 
if([delegate respondsToSelector: selector]) 
{ 
    if(arg != NULL) 
    { 
     [delegate performSelector: selector withObject: arg withObject: err]; 
    } 
    else 
    { 
     [delegate performSelector: selector withObject: err]; 
    } 
} 
else 
{ 
    NSLog(@"Missed Method"); 
} 
} 

的代码是在外部教程网站教程的一部分 - 我无法确定导致我的应用程序崩溃的问题。

有没有人知道代码导致崩溃的原因?任何帮助将非常感激。我发现很难复制任何设备上的崩溃,并且使用NSZombies也可能是因为我无法重新创建崩溃。

谢谢大家,提前。

回答

0

看来你正在调用的选择器需要2个参数:'arg'和'error'。现在的事情是,如果'arg'是零,你只需要调用一个参数 - 所以第二个参数基本上是垃圾,当选择器被调用的对象试图访问第二个参数时,它崩溃。总而言之,您并不需要if() - 总是将两个参数传递给选择器,并让委托检测它的第一个参数是否为零。

+0

我当然会试一试 - 谢谢你的评论 - 很难确定这个实际工作是否需要几次尝试,但是当我找到时我会回复你的! – user1309044

+0

@ user1309044相信我,它*是*的问题。 – 2012-09-09 19:55:05

相关问题