2012-07-25 7 views
3

가끔 내 앱이 costumers 기기에서 충돌하는 이유를 알아 내려고했습니다. 장치가 탈옥한지 여부는 중요하지 않습니다. 내 앱은 AppStore에서 가져 왔습니다. 크래시 된 스레드가 다르더라도 다른 crashlog는 거의 동일합니다.앱 크래시, 이유가 없습니다.

Hardware Model:  iPhone3,1 
Process:   [the APP] [296] 
Path:   /var/mobile/Applications/06DF5BC5-F9C2-49EE-B2D5-5979C09B51A2/[the APP].app/[the APP] 
Identifier:  [the APP] 
Version:   3.3.0 
Code Type:  ARM 
Parent Process: launchd [1] 

Date/Time:  2012-07-22 15:15:18 +0000 
OS Version:  iPhone OS 5.1.1 (9B206) 
Report Version: 104 

Exception Type: SIGSEGV 
Exception Codes: SEGV_ACCERR at 0xbbadbeef 
Crashed Thread: 7 

Thread 0: 
0 libsystem_kernel.dylib    0x35c39004 mach_msg_trap + 20 
1 CoreFoundation      0x353673f3 __CFRunLoopServiceMachPort + 127 
2 CoreFoundation      0x353660f1 __CFRunLoopRun + 825 
3 CoreFoundation      0x352e94a5 CFRunLoopRunSpecific + 301 
4 CoreFoundation      0x352e936d CFRunLoopRunInMode + 105 
5 GraphicsServices     0x36f85439 GSEventRunModal + 137 
6 UIKit        0x32df5cd5 UIApplicationMain + 1081 
7 [the APP]       0x0000b549 main (main.m:20) 

Thread 1: 
0 libsystem_kernel.dylib    0x35c393a8 kevent + 24 
1 libdispatch.dylib     0x3422cbc9 _dispatch_mgr_wakeup + 1 

Thread 2: 
0 libsystem_kernel.dylib    0x35c490d8 __psynch_mutexwait + 24 
1 WebCore        0x311454ef _ZL17_WebTryThreadLockb + 215 
2 WebCore        0x311a4173 _ZL19SendDelegateMessageP12NSInvocation + 707 
3 WebKit        0x3507ad87 -[_WebSafeForwarder forwardInvocation:] + 119 
4 CoreFoundation      0x35395a83 ___forwarding___ + 667 
5 CoreFoundation      0x352f0650 _CF_forwarding_prep_0 + 48 
6 WebKit        0x350816a1 WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction(void (WebCore::PolicyChecker::*)(WebCore::PolicyAction), WebCore::NavigationAction const&, WebCore::ResourceRequest const&, WTF::PassRefPtr) + 221 
7 WebCore        0x3120b8b9 WebCore::PolicyChecker::checkNavigationPolicy(WebCore::ResourceRequest const&, WebCore::DocumentLoader*, WTF::PassRefPtr, void (*)(void*, WebCore::ResourceRequest const&, WTF::PassRefPtr, bool), void*) + 873 
8 WebCore        0x3120ae4d WebCore::FrameLoader::loadWithDocumentLoader(WebCore::DocumentLoader*, WebCore::FrameLoadType, WTF::PassRefPtr) + 913 
9 WebCore        0x312092b9 WebCore::FrameLoader::load(WebCore::DocumentLoader*) + 169 
10 WebCore        0x312091e5 WebCore::FrameLoader::load(WebCore::ResourceRequest const&, WebCore::SubstituteData const&, bool) + 241 
11 WebKit        0x350b3f5f -[WebFrame _loadData:MIMEType:textEncodingName:baseURL:unreachableURL:] + 1119 
12 WebKit        0x350b3797 -[WebFrame _loadHTMLString:baseURL:unreachableURL:] + 79 
13 WebKit        0x350b37bb -[WebFrame loadHTMLString:baseURL:] + 31 
14 WebCore        0x311950b5 HandleRunSource + 365 
15 CoreFoundation      0x35367ad3 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 15 
16 CoreFoundation      0x35367335 __CFRunLoopDoSources0 + 365 
17 CoreFoundation      0x35366045 __CFRunLoopRun + 653 
18 CoreFoundation      0x352e94a5 CFRunLoopRunSpecific + 301 
19 CoreFoundation      0x352e936d CFRunLoopRunInMode + 105 
20 WebCore        0x311e8ca3 _ZL12RunWebThreadPv + 403 
21 libsystem_c.dylib     0x32756735 _pthread_start + 321 

Thread 3: 
0 libsystem_kernel.dylib    0x35c39004 mach_msg_trap + 20 
1 CoreFoundation      0x353673f3 __CFRunLoopServiceMachPort + 127 
2 CoreFoundation      0x3536612b __CFRunLoopRun + 883 
3 CoreFoundation      0x352e94a5 CFRunLoopRunSpecific + 301 
4 CoreFoundation      0x352e936d CFRunLoopRunInMode + 105 
5 Foundation       0x34e22bb9 +[NSURLConnection(Loader) _resourceLoadLoop:] + 309 
6 Foundation       0x34e22a81 -[NSThread main] + 73 
7 Foundation       0x34eb6591 __NSThread__main__ + 1049 
8 libsystem_c.dylib     0x32756735 _pthread_start + 321 

Thread 4: 
0 libsystem_kernel.dylib    0x35c49570 __select + 20 
1 libsystem_c.dylib     0x32756735 _pthread_start + 321 

Thread 5: 
0 libsystem_kernel.dylib    0x35c39004 mach_msg_trap + 20 
1 CoreFoundation      0x353673f3 __CFRunLoopServiceMachPort + 127 
2 CoreFoundation      0x3536612b __CFRunLoopRun + 883 
3 CoreFoundation      0x352e94a5 CFRunLoopRunSpecific + 301 
4 CoreFoundation      0x352e936d CFRunLoopRunInMode + 105 
5 YouTube        0x33e336c9 -[YTImageLoader(Internal) _startLoader] + 245 
6 Foundation       0x34e22a81 -[NSThread main] + 73 
7 Foundation       0x34eb6591 __NSThread__main__ + 1049 
8 libsystem_c.dylib     0x32756735 _pthread_start + 321 

Thread 6: 
0 libsystem_kernel.dylib    0x35c49cd4 __workq_kernreturn + 8 

Thread 7 Crashed: 
0 WebCore        0x311454e2 _ZL17_WebTryThreadLockb + 202 
1 WebCore        0x3114540f WebThreadLock + 55 
2 UIKit        0x32e5537b -[UIWebTiledView layoutSubviews] + 43 
3 UIKit        0x32e5534b -[UIWebDocumentView layoutSubviews] + 127 
4 UIKit        0x32dcaf37 -[UIView(CALayerDelegate) layoutSublayersOfLayer:] + 183 
5 CoreFoundation      0x352f21fb -[NSObject performSelector:withObject:] + 43 
6 QuartzCore       0x321c2aa5 -[CALayer layoutSublayers] + 217 
7 QuartzCore       0x321c26bd CA::Layer::layout_if_needed(CA::Transaction*) + 217 
8 QuartzCore       0x321c6843 CA::Context::commit_transaction(CA::Transaction*) + 227 
9 QuartzCore       0x321c657f CA::Transaction::commit() + 315 
10 QuartzCore       0x3220dd01 CA::Transaction::release_thread(void*) + 37 
11 libsystem_c.dylib     0x327490ff _pthread_tsd_cleanup + 171 
12 libsystem_c.dylib     0x32748d7b _pthread_exit + 123 
13 libsystem_c.dylib     0x3275a0f3 pthread_exit + 31 
14 Foundation       0x34e3237b +[NSThread exit] + 11 
15 Foundation       0x34eb65af __NSThread__main__ + 1079 
16 libsystem_c.dylib     0x32756735 _pthread_start + 321 

Thread 8: 
0 libsystem_kernel.dylib    0x35c49cd4 __workq_kernreturn + 8 

Thread 9: 
0 libsystem_kernel.dylib    0x35c49cd4 __workq_kernreturn + 8 

Thread 10: 
0 libsystem_kernel.dylib    0x35c49cd4 __workq_kernreturn + 8 

Thread 11: 
0 libsystem_kernel.dylib    0x35c49cd4 __workq_kernreturn + 8 

Thread 7 crashed with ARM Thread State: 
    r0: 0xffffffff  r1: 0x00001100  r2: 0x2ffc850c  r3: 0x00000000 
    r4: 0xbbadbeef  r5: 0x00000000  r6: 0x0054b000  r7: 0x2ffc8b4c 
    r8: 0x0ca32800  r9: 0x3399fc2c r10: 0x2ffc8be4 r11: 0x2ffc8ebc 
    ip: 0x3ee8e270  sp: 0x2ffc8b40  lr: 0x35790fef  pc: 0x32c7f4e2 
    cpsr: 0x60000030 

Binary Images: 
[cut cause of char limit] 

나는 무슨 일이 일어 났는지 전혀 모릅니다.

답변

4

문제는 백그라운드 스레드에서 UI 개체로 메시지를 보내는 것이므로 금지되어 있습니다.

스레드 7이 스택 추적으로 UIView의 레이아웃 메커니즘에 충돌했습니다. 스레드 7이이 코드에 포함되어 있다는 사실은 아마도 setNeedsLayout 또는이 백그라운드 스레드에서 전송되는 다른 메서드로 인해 발생합니다.

+0

하지만 문제는 응용 프로그램이 항상 드문 경우 일 뿐이라는 것입니다. – CrEaK

+1

... 동시성 문제에 대한 일반적인 동작입니다. –

3

나는 웹보기가로드를 완료하고보기를 다시로드하려고하지만, 뷰 컨트롤러가 poped 및 출시 된 생각, 당신은 viewWillDisappear 방법이를 추가해야합니다

- (void)viewWillDisappear:(BOOL)animated{ 
    [super viewWillDisappear:animated]; 
    if ([webView isLoading]) { 
     [webView stopLoading]; 
    } 
} 
0

내가 오전이 프로젝트에 대한 유사한 예외를보고 WebKit에서 실행되는 WinTel 기반 GWT App. 이 특정 문제는 WebKit의 메모리가 부족한 경우에만 발생하는 것으로 확인되었습니다.

관련 문제