Я разрабатываю игру в палач для iPhone и iPad, но иногда он падает. вот журнал Крушение Xcode:iPhone App падает, даже если ARC ... помогите мне найти проблему, пожалуйста,
Exception Type: EXC_CRASH (SIGABRT)
Exception Codes: 0x00000000, 0x00000000
Crashed Thread: 0
Last Exception Backtrace:
0 CoreFoundation 0x353e788f `__exceptionPreprocess`+ 163
1 libobjc.A.dylib 0x3778e259 objc_exception_throw + 33
2 CoreFoundation 0x353e7789 +[NSException raise:format:] + 1
3 CoreFoundation 0x353e77ab +[NSException raise:format:] + 35
4 CoreFoundation 0x35354fed`-[__NSCFString characterAtIndex:]`+ 89
5 Poke Hangman 0x000e41f5 -[ViewController setStringWithDatabase::](ViewController.m:194)
6 Poke Hangman 0x000e388b -[ViewController preparaStringhe:] (ViewController.m:39)
7 Poke Hangman 0x000e4685 -[ViewController cambia] (ViewController.m:248)
8 Poke Hangman 0x000e3bc5 -[ViewController checkChar:] (ViewController.m:81)
9 Poke Hangman 0x000e6155 -[ViewController ButtonG:] (ViewController.m:579)
10 CoreFoundation 0x353413fd -[NSObject performSelector:withObject:withObject:] + 53
11 UIKit 0x32e36e07 -[UIApplication sendAction:to:from:forEvent:] + 63
12 UIKit 0x32e36dc3 -[UIApplication sendAction:toTarget:fromSender:forEvent:] + 31
13 UIKit 0x32e36da1 -[UIControl sendAction:to:forEvent:] + 45
14 UIKit 0x32e36b11 -[UIControl(Internal) _sendActionsForEvents:withEvent:] + 493
15 UIKit 0x32e37449 -[UIControl touchesEnded:withEvent:] + 477
16 UIKit 0x32e3592b -[UIWindow _sendTouchesForEvent:] + 319
17 UIKit 0x32e35319 -[UIWindow sendEvent:] + 381
18 UIKit 0x32e1b695 -[UIApplication sendEvent:] + 357
19 UIKit 0x32e1af3b _UIApplicationHandleEvent + 5827
20 GraphicsServices 0x36fda22b PurpleEventCallback + 883
21 CoreFoundation 0x353bb523 <br>`__CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE1_PERFORM_FUNCTION__`+ 39
22 CoreFoundation 0x353bb4c5 __CFRunLoopDoSource1 + 141
23 CoreFoundation 0x353ba313 __CFRunLoopRun + 1371
24 CoreFoundation 0x3533d4a5 CFRunLoopRunSpecific + 301
25 CoreFoundation 0x3533d36d CFRunLoopRunInMode + 105
26 GraphicsServices 0x36fd9439 GSEventRunModal + 137
27 UIKit 0x32e49cd5 UIApplicationMain + 1081
28 Poke Hangman 0x000e3263 main (main.m:16)
29 Poke Hangman 0x000e3208 start + 40
Thread 0 name: Dispatch queue: com.apple.main-thread
Thread 0 Crashed:
0 libsystem_kernel.dylib 0x35c9d32c __pthread_kill + 8
1 libsystem_c.dylib 0x327e9208 pthread_kill + 48
2 libsystem_c.dylib 0x327e2298 abort + 88
3 libc++abi.dylib 0x3579ff64 abort_message + 40
4 libc++abi.dylib 0x3579d346 _ZL17default_terminatev + 18
5 libobjc.A.dylib 0x3778e350 _objc_terminate + 140
6 libc++abi.dylib 0x3579d3be _ZL19safe_handler_callerPFvvE + 70
7 libc++abi.dylib 0x3579d44a std::terminate() + 14
8 libc++abi.dylib 0x3579e81e __cxa_rethrow + 82
9 libobjc.A.dylib 0x3778e2a2 objc_exception_rethrow + 6
10 CoreFoundation 0x3533d506 CFRunLoopRunSpecific + 398
11 CoreFoundation 0x3533d366 CFRunLoopRunInMode + 98
12 GraphicsServices 0x36fd9432 GSEventRunModal + 130
13 UIKit 0x32e49cce UIApplicationMain + 1074
14 Poke Hangman 0x000e325c main (main.m:16)
15 Poke Hangman 0x000e3200 start + 32
Thread 1 name: Dispatch queue: com.apple.libdispatch-manager
Thread 1:
0 libsystem_kernel.dylib 0x35c8d3a8 kevent + 24
1 libdispatch.dylib 0x34277f04 _dispatch_mgr_invoke + 708
2 libdispatch.dylib 0x34277c22 _dispatch_mgr_thread + 30
Thread 2 name: WebThread
Thread 2:
0 libsystem_kernel.dylib 0x35c8d004 mach_msg_trap + 20
1 libsystem_kernel.dylib 0x35c8d1fa mach_msg + 50
2 CoreFoundation 0x353bb3ec __CFRunLoopServiceMachPort + 120
3 CoreFoundation 0x353ba124 __CFRunLoopRun + 876
4 CoreFoundation 0x3533d49e CFRunLoopRunSpecific + 294
5 CoreFoundation 0x3533d366 CFRunLoopRunInMode + 98
6 WebCore 0x3123cc9c _ZL12RunWebThreadPv + 396
7 libsystem_c.dylib 0x327aa72e _pthread_start + 314
8 libsystem_c.dylib 0x327aa5e8 thread_start + 0
Thread 0 crashed with ARM Thread State:
r0: 0x00000000 r1: 0x00000000 r2: 0x00000001 r3: 0x00000000
r4: 0x00000006 r5: 0x3e9f4d98 r6: 0x00000002 r7: 0x2fee09f0
r8: 0x002ad500 r9: 0x00000000 r10: 0x3ee51bc0 r11: 0x00000001
ip: 0x00000148 sp: 0x2fee09e4 lr: 0x327e920f pc: 0x35c9d32c
cpsr: 0x00000010
решить эту проблему, но имея новый:
вот журнал аварии:
Exception Type: EXC_CRASH (SIGABRT)
Exception Codes: 0x00000000, 0x00000000
Crashed Thread: 0
Last Exception Backtrace:
0 CoreFoundation 0x39ee717b`__exceptionPreprocess +`163
1 libobjc.A.dylib 0x34ea095b objc_exception_throw + 31
2 CoreFoundation 0x39ee709d -[NSException initWithCoder:] + 1
3 CoreFoundation 0x39e4bd5b -[__NSCFString characterAtIndex:] + 87
4 Poke Hangman 0x00077493 0x74000 + 13459
5 Poke Hangman 0x0007644b 0x74000 + 9291
6 Poke Hangman 0x00077a35 0x74000 + 14901
7 Poke Hangman 0x00076839 0x74000 + 10297
8 Poke Hangman 0x0007aa7b 0x74000 + 27259
9 UIKit 0x32e4dd09 -[UIApplication sendAction:to:from:forEvent:] + 73
10 UIKit 0x32e4dcbb -[UIApplication sendAction:toTarget:fromSender:forEvent:] + 31
11 UIKit 0x32e4dc95 -[UIControl sendAction:to:forEvent:] + 45
12 UIKit 0x32e4d9eb -[UIControl(Internal) _sendActionsForEvents:withEvent:] + 503
13 UIKit 0x32e4e369 -[UIControl touchesEnded:withEvent:] + 489
14 UIKit 0x32e4c791 -[UIWindow _sendTouchesForEvent:] + 525
15 UIKit 0x32e3a72d -[UIApplication sendEvent:] + 381
16 UIKit 0x32e3a009 _UIApplicationHandleEvent + 6057
17 GraphicsServices 0x33f04603 _PurpleEventCallback + 591
18 GraphicsServices 0x33f04233 PurpleEventCallback + 35
19 CoreFoundation 0x39eb7873 `__CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE1_PERFORM_FUNCTION__`+ 35
20 CoreFoundation 0x39eb7817 __CFRunLoopDoSource1 + 139
21 CoreFoundation 0x39eb6611 __CFRunLoopRun + 1385
22 CoreFoundation 0x39e33be5 CFRunLoopRunSpecific + 357
23 CoreFoundation 0x39e33a71 CFRunLoopRunInMode + 105
24 GraphicsServices 0x33f0334b GSEventRunModal + 75
25 UIKit 0x32e607f5 UIApplicationMain + 1121
26 Poke Hangman 0x00075f65 0x74000 + 8037
27 Poke Hangman 0x00075f00 0x74000 + 7936
пожалуйста, помогите мне найти вопрос ..
вот раздел, где я думаю, что он сбой: isPresent сообщает, присутствует ли символ пользователя в слове или нет если пользовательский символ существует в правильном слове, в искривленном, он поменяется местами в позиции i. если нет, то оценка будет ниже на 20. извините за мой плохой английский и надеюсь, что вы мне поможем;)
bool isPresent = NO;
for (int i = 0; i < correctWord.length; i++)
if (userCharFromButton == [correctWord characterAtIndex:i])
{
criptedWord = [criptedWord stringByReplacingCharactersInRange:NSMakeRange(i, 1.0) withString:[NSString stringWithFormat:@"%c", userCharFromButton]];
isPresent = YES;
}
word.text = criptedWord;
if (isPresent == NO)
currentlyScore -= 20;
//check if the word is complete
bool complete = YES;
for (int i = 1; i < criptedWord.length; i++)
if ([criptedWord characterAtIndex:i] == '-')
complete = NO;
1. Несмотря на заголовок вашего вопроса («iPhone App падает, даже если ARC ...»), использование ARC не означает, что вы можете писать код так, как вам нравится. Вы все равно можете вызвать сбои. 2. Идите и прочитайте заметки разработчика Apple для отладки. Научитесь использовать инструменты, которые они предоставляют вам. –
Попробуйте положить отладчик в методы, где он сбой. –