2012-01-25 92 views
3

我開始變得絕望,我需要建議。這裏的情況:iPhone應用程序在某些設備上啓動時崩潰(不是全部)

  • 我最近更新的應用程序已經開始直接崩潰在一些設備上啓動。
  • 它沒有更新之前。
  • 我不能複製這個,雖然我有完全相同的設備和軟件版本。
  • 不管它是全新的卸載/安裝還是更新,它都會崩潰。

崩潰日誌不告訴我任何有用的東西。這是一個,也許有人比我聰明知道發生了什麼:

  Incident Identifier: 52C11BF9-A202-4ECC-B227-4A57899CB2E1 
      CrashReporter Key: 3129de7e18ddccceb41bf4d0ad0465bc2e66df29 
      Hardware Model:  iPhone3,1 
      Process:   GT-BetApp [3364] 
      Path:   /var/mobile/Applications/5E9BA5D7-4337-44CD-BDAB-CE653680EEB3/GT-BetApp.app/GT-BetApp 
      Identifier:  GT-BetApp 
      Version:   ??? (???) 
      Code Type:  ARM (Native) 
      Parent Process: launchd [1] 

      Date/Time:  2012-01-24 18:59:34.573 +0100 
      OS Version:  iPhone OS 5.0.1 (9A405) 
      Report Version: 104 

      Exception Type: EXC_CRASH (SIGABRT) 
      Exception Codes: 0x00000000, 0x00000000 
      Crashed Thread: 0 

      Last Exception Backtrace: 
      0 CoreFoundation     0x344258bf __exceptionPreprocess + 163 
      1 libobjc.A.dylib     0x346751e5 objc_exception_throw + 33 
      2 CoreFoundation     0x344257b9 +[NSException raise:format:] + 1 
      3 CoreFoundation     0x344257db +[NSException raise:format:] + 35 
      4 UIKit       0x37a42747 -[UINib instantiateWithOwner:options:] + 1567 
      5 UIKit       0x37a43bb9 -[NSBundle(UINSBundleAdditions) loadNibNamed:owner:options:] + 137 
      6 UIKit       0x3797ca45 -[UIApplication _loadMainNibFileNamed:bundle:] + 37 
      7 UIKit       0x37806227 -[UIApplication _loadMainInterfaceFile] + 223 
      8 UIKit       0x37800313 -[UIApplication _runWithURL:payload:launchOrientation:statusBarStyle:statusBarHidden:] + 227 
      9 UIKit       0x377ce921 -[UIApplication handleEvent:withNewEvent:] + 1017 
      10 UIKit       0x377ce3bf -[UIApplication sendEvent:] + 55 
      11 UIKit       0x377cdd2d _UIApplicationHandleEvent + 5809 
      12 GraphicsServices    0x30c00df3 PurpleEventCallback + 883 
      13 CoreFoundation     0x343f9553 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE1_PERFORM_FUNCTION__ + 39 
      14 CoreFoundation     0x343f94f5 __CFRunLoopDoSource1 + 141 
      15 CoreFoundation     0x343f8343 __CFRunLoopRun + 1371 
      16 CoreFoundation     0x3437b4dd CFRunLoopRunSpecific + 301 
      17 CoreFoundation     0x3437b3a5 CFRunLoopRunInMode + 105 
      18 UIKit       0x377ff457 -[UIApplication _run] + 551 
      19 UIKit       0x377fc743 UIApplicationMain + 1091 
      20 GT-BetApp      0x00002c79 main (main.m:15) 
      21 GT-BetApp      0x00002c44 0x1000 + 7236 


      Thread 0 name: Dispatch queue: com.apple.main-thread 
      Thread 0 Crashed: 
      0 libsystem_kernel.dylib   0x3634032c __pthread_kill + 8 
      1 libsystem_c.dylib    0x33209f54 pthread_kill + 48 
      2 libsystem_c.dylib    0x33202fe4 abort + 88 
      3 libc++abi.dylib     0x3384cf64 abort_message + 40 
      4 libc++abi.dylib     0x3384a346 _ZL17default_terminatev + 18 
      5 libobjc.A.dylib     0x346752dc _objc_terminate + 140 
      6 libc++abi.dylib     0x3384a3be _ZL19safe_handler_callerPFvvE + 70 
      7 libc++abi.dylib     0x3384a44a std::terminate() + 14 
      8 libc++abi.dylib     0x3384b81e __cxa_rethrow + 82 
      9 libobjc.A.dylib     0x3467522e objc_exception_rethrow + 6 
      10 CoreFoundation     0x3437b53e CFRunLoopRunSpecific + 398 
      11 CoreFoundation     0x3437b39e CFRunLoopRunInMode + 98 
      12 UIKit       0x377ff450 -[UIApplication _run] + 544 
      13 UIKit       0x377fc73c UIApplicationMain + 1084 
      14 GT-BetApp      0x00002c72 main (main.m:14) 
      15 GT-BetApp      0x00002c3c 0x1000 + 7228 

      Thread 1 name: Dispatch queue: com.apple.libdispatch-manager 
      Thread 1: 
      0 libsystem_kernel.dylib   0x363303b4 kevent + 24 
      1 libdispatch.dylib    0x3705ae78 _dispatch_mgr_invoke + 708 
      2 libdispatch.dylib    0x3705ab96 _dispatch_mgr_thread + 30 

      Thread 2: 
      0 libsystem_kernel.dylib   0x36340cd4 __workq_kernreturn + 8 
      1 libsystem_c.dylib    0x331c630a _pthread_wqthread + 610 
      2 libsystem_c.dylib    0x331c609c start_wqthread + 0 

      Thread 3: 
      0 libsystem_kernel.dylib   0x36340cd4 __workq_kernreturn + 8 
      1 libsystem_c.dylib    0x331c630a _pthread_wqthread + 610 
      2 libsystem_c.dylib    0x331c609c start_wqthread + 0 

      Thread 4 name: WebThread 
      Thread 4: 
      0 libsystem_kernel.dylib   0x36330010 mach_msg_trap + 20 
      1 libsystem_kernel.dylib   0x36330206 mach_msg + 50 
      2 CoreFoundation     0x343f941c __CFRunLoopServiceMachPort + 120 
      3 CoreFoundation     0x343f8154 __CFRunLoopRun + 876 
      4 CoreFoundation     0x3437b4d6 CFRunLoopRunSpecific + 294 
      5 CoreFoundation     0x3437b39e CFRunLoopRunInMode + 98 
      6 WebCore       0x3684f128 _ZL12RunWebThreadPv + 396 
      7 libsystem_c.dylib    0x331cbc16 _pthread_start + 314 
      8 libsystem_c.dylib    0x331cbad0 thread_start + 0 

      Thread 0 crashed with ARM Thread State: 
       r0: 0x00000000 r1: 0x00000000  r2: 0x00000001  r3: 0x00000000 
       r4: 0x00000006 r5: 0x3eaf3ce8  r6: 0x00000002  r7: 0x2fdffa60 
       r8: 0x3fd97dec r9: 0x3384da4a  r10: 0x0015d9e0  r11: 0x00156150 
       ip: 0x00000148 sp: 0x2fdffa54  lr: 0x33209f5b  pc: 0x3634032c 
       cpsr: 0x00000010 

至於我的代碼的唯一參考的報告是對的main.m,那就是:

  #import <UIKit/UIKit.h> 

      int main(int argc, char *argv[]) 
      { 
       NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init]; 
       int retVal = UIApplicationMain(argc, argv, nil, nil); 
       [pool release]; 
       return retVal; 
      } 

因此,這裏是我的問題:我如何確定原因?我能做些什麼來獲得關於這次崩潰的更多信息(我可以將版本發送給遇到此次崩潰的人)?我能做些什麼來防止它?

任何意見非常感謝,並提前感謝您!

UPDATE:

我找到了解決辦法,這是我的一個愚蠢的錯誤。

當設備的語言沒有本地化時,MainWindow.xib無法加載。我一直認爲,它會倒退英語,但它不(現在)。

在以前的版本中,這從來都不是問題。我不知道爲什麼這個行爲改變了。

感謝所有回覆,您幫助我在正確的方向上搜索!

+1

它似乎崩潰與NIB文件加載有關。 – 2012-01-25 09:10:35

+0

請參閱此:http://stackoverflow.com/questions/4318302/iphone-application-crash-on-launch – samfisher

+0

@Vince好的,謝謝。我該如何解決這個問題?在我的設備上正常工作。 – cit

回答

3

應用程序試圖讀取主應用程序的Info.plist文件中指定的主要nib文件。

在plist文件有像

NSMainNibFile -> MyMainWindow 

一個條目UIApplicationMain用於加載從初始視圖控制器。此文件似乎已損壞。常見的錯誤是爲包含的對象使用自定義類,然後在不更改nib文件的情況下更改/刪除該類。

爲了進一步瞭解錯誤,瞭解正在引發的異常的描述會非常有幫助。你會在控制檯日誌中找到它。

+0

嗨,謝謝你的回答! 我的主窗口。xib包含一個帶有三個UINavigationController-Tabs的UITabBarController,所有標準控件。沒有其他(自定義)類。 如果這個文件被損壞了,我也不會崩潰嗎? 考慮到第二點,你儘可能多地瞭解異常情況,通過電子郵件向我發送了崩潰報告。 感謝您的幫助! – cit

+0

非常感謝,得到它(更新問題的答案)! – cit

相關問題