7

对于一小部分用户,我们的 iOS 应用程序在启动时崩溃。

  1. 我们无法在多个测试设备中的任何一个上重现此崩溃,无论是连接到 Xcode 还是未连接

  2. 崩溃仅发生在 iOS 5 上,但发生在 iPod、iPhone 和 iPad 上

  3. 崩溃是启动时的看门狗超时

  4. 只有少数用户遇到了崩溃

  5. 该应用程序仅在用户升级时崩溃

  6. 如果用户删除,然后重新安装应用程序,崩溃就会停止

  7. 关闭并再次打开设备无济于事

  8. 项目中使用的唯一 XIB 是主窗口的基本空 XIB

如果有人对这次崩溃可能来自哪里有任何想法,我们肯定会很高兴听到。一个月来,我们一直试图追踪它,但没有成功。

非常感谢!

这是我们的应用程序:didFinishLaunchingWithOptions:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
    [self.window setBackgroundColor:[UIColor myBackgroundColor]];

    gRootViewController = [[RootViewController alloc] init];

    [self performSelectorOnMainThread:@selector(loadGame) withObject:nil waitUntilDone:NO];

    return YES;

}

这是符号化的崩溃日志:

Incident Identifier: 8AC99711-0817-4A93-AEFB-82E24FFE3291
Hardware Model:      iPhone3,1
Process:         myapp [92]
Path:            /var/mobile/Applications/B90DCE6D-F392-493E-8BC8-7FE0A64D80B0/myapp.app/myapp
Identifier:      myapp
Version:         ??? (???)
Code Type:       ARM (Native)
Parent Process:  launchd [1]

Date/Time:       2012-04-04 21:52:17.108 -0500
OS Version:      iPhone OS 5.1 (9B176)
Report Version:  104

Exception Type:  00000020
Exception Codes: 0x8badf00d
Highlighted Thread:  0

Application Specific Information:
com.mycompany.myapp failed to launch in time

Elapsed total CPU time (seconds): 20.130 (user 20.130, system 0.000), 100% CPU 
Elapsed application CPU time (seconds): 14.747, 73% CPU

Thread 0 name:  Dispatch queue: com.apple.main-thread
Thread 0:
0   CoreFoundation                  0x34fe7930 CFBasicHashFindBucket + 2012
1   CoreFoundation                  0x34fe713e CFDictionaryGetValue + 110
2   CoreFoundation                  0x35054722 __CFBinaryPlistCreateObject2 + 38
3   CoreFoundation                  0x35055514 __CFBinaryPlistCreateObject2 + 3608
4   CoreFoundation                  0x35055514 __CFBinaryPlistCreateObject2 + 3608
5   CoreFoundation                  0x3505574e __CFTryParseBinaryPlist + 158
6   CoreFoundation                  0x34ffe9a0 _CFPropertyListCreateWithData + 80
7   CoreFoundation                  0x350175da CFPropertyListCreateWithStream + 430
8   CoreFoundation                  0x350173c0 CFPropertyListCreateFromStream + 56
9   CoreFoundation                  0x350170f0 -[CFXPreferencesPropertyListSourceSynchronizer createPlistFromDisk] + 128
10  CoreFoundation                  0x35007532 -[CFXPreferencesPropertyListSourceSynchronizer synchronizeAlreadyFlocked] + 242
11  CoreFoundation                  0x35007436 -[CFXPreferencesPropertyListSourceSynchronizer synchronize] + 14
12  CoreFoundation                  0x35016b34 -[CFXPreferencesPropertyListSource synchronize] + 104
13  CoreFoundation                  0x3509050e __CFXPreferencesGetSourceForTriplet + 454
14  CoreFoundation                  0x35090238 __CFXPreferencesGetSearchListForBundleID + 164
15  CoreFoundation                  0x3509192e ___CFXPreferencesCopyAppValue_block_invoke_0 + 6
16  CoreFoundation                  0x34fe8b24 CFPreferencesCopyAppValue + 276
17  Foundation                      0x30ed341c -[NSUserDefaults(NSUserDefaults) initWithUser:] + 1356
18  Foundation                      0x30eb28f8 +[NSUserDefaults(NSUserDefaults) standardUserDefaults] + 100
19  UIKit                           0x320f015e _InitMagnificationFilter + 26
20  libsystem_c.dylib               0x36d4b7ce pthread_once + 70
21  UIKit                           0x320dbbcc -[UIView _createLayerWithFrame:] + 424
22  UIKit                           0x320db874 UIViewCommonInitWithFrame + 348
23  UIKit                           0x320db6dc -[UIView initWithFrame:] + 92
24  UIKit                           0x320effaa -[UIStatusBar initWithFrame:showForegroundView:] + 46
25  UIKit                           0x320eff70 -[UIStatusBar initWithFrame:] + 32
26  UIKit                           0x320efdc6 -[UIApplication _createStatusBarWithRequestedStyle:orientation:hidden:] + 78
27  UIKit                           0x320ef876 -[UIApplication _runWithURL:payload:launchOrientation:statusBarStyle:statusBarHidden:] + 138
28  UIKit                           0x320bdc64 -[UIApplication handleEvent:withNewEvent:] + 1004
29  UIKit                           0x320bd708 -[UIApplication sendEvent:] + 48
30  UIKit                           0x320bd0dc _UIApplicationHandleEvent + 5820
31  GraphicsServices                0x362f2224 PurpleEventCallback + 876
32  CoreFoundation                  0x3507351c __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE1_PERFORM_FUNCTION__ + 32
33  CoreFoundation                  0x350734be __CFRunLoopDoSource1 + 134
34  CoreFoundation                  0x3507230c __CFRunLoopRun + 1364
35  CoreFoundation                  0x34ff549e CFRunLoopRunSpecific + 294
36  CoreFoundation                  0x34ff5366 CFRunLoopRunInMode + 98
37  UIKit                           0x320eea0c -[UIApplication _run] + 544
38  UIKit                           0x320ebe76 UIApplicationMain + 1074
39  myapp                               0x00005800 main (main.m:62)
40  myapp                               0x00002404 0x1000 + 5124

Thread 1 name:  Dispatch queue: com.apple.libdispatch-manager
Thread 1:
0   libsystem_kernel.dylib          0x34e833a8 kevent + 24
1   libdispatch.dylib               0x310d0ea4 _dispatch_mgr_invoke + 708
2   libdispatch.dylib               0x310d0bc2 _dispatch_mgr_thread + 30

Thread 2 name:  WebThread
Thread 2:
0   libsystem_kernel.dylib          0x34e83004 mach_msg_trap + 20
1   libsystem_kernel.dylib          0x34e831fa mach_msg + 50
2   CoreFoundation                  0x350733ec __CFRunLoopServiceMachPort + 120
3   CoreFoundation                  0x35072124 __CFRunLoopRun + 876
4   CoreFoundation                  0x34ff549e CFRunLoopRunSpecific + 294
5   CoreFoundation                  0x34ff5366 CFRunLoopRunInMode + 98
6   WebCore                         0x36e780f0 _ZL12RunWebThreadPv + 396
7   libsystem_c.dylib               0x36d5072e _pthread_start + 314
8   libsystem_c.dylib               0x36d505e8 thread_start + 0

Unknown thread crashed with unknown flavor: 5, state_count: 1

Binary Images:
    0x1000 -    0x1afff +myapp armv7  <31178538f2203d4095608727afa603d5> /var/mobile/Applications/B90DCE6D-F392-493E-8BC8-7FE0A64D80B0/myapp.app/myapp
0x2fe5a000 - 0x2fe7bfff  dyld armv7  <4a817f3e0def30d5ae2032157d889c1d> /usr/lib/dyld
0x3030e000 - 0x30312fff  IOMobileFramebuffer armv7  <42dbc26828e934acabb4f3b0a35d8250> /System/Library/PrivateFrameworks/IOMobileFramebuffer.framework/IOMobileFramebuffer
0x30313000 - 0x30313fff  liblangid.dylib armv7  <644ff4bcfbf337b5b5859e3f0fc0a9a8> /usr/lib/liblangid.dylib
0x30373000 - 0x308b7fff  FaceCoreLight armv7  <f326d88709683520b251dc53cb847c11> /System/Library/PrivateFrameworks/FaceCoreLight.framework/FaceCoreLight
0x308b8000 - 0x30937fff  libsqlite3.dylib armv7  <bf01f5ed47b033d8bde30d735ff44416> /usr/lib/libsqlite3.dylib
0x3095f000 - 0x30a37fff  vImage armv7  <caf3648be2933384b6aa1ae7408ab4f0> /System/Library/Frameworks/Accelerate.framework/Frameworks/vImage.framework/vImage
0x30a4e000 - 0x30a55fff  libc++abi.dylib armv7  <bab4dcbfc5943d3fbb637342d35e8045> /usr/lib/libc++abi.dylib
0x30a56000 - 0x30aa7fff  CoreText armv7  <5bfac4ee88d03d5b87a1f105abb7756c> /System/Library/Frameworks/CoreText.framework/CoreText
0x30b39000 - 0x30b39fff  libkeymgr.dylib armv7  <ebd2dddf55d83cf48a18913968775960> /usr/lib/system/libkeymgr.dylib
0x30b3a000 - 0x30baafff  CoreImage armv7  <86ac6f5a267637b6b7f8a831dfc7c64b> /System/Library/Frameworks/CoreImage.framework/CoreImage
0x30be0000 - 0x30c1cfff  iCalendar armv7  <f2836083051132d3aa40ad82d7f73aea> /System/Library/PrivateFrameworks/iCalendar.framework/iCalendar
0x30c1d000 - 0x30c28fff  AccountSettings armv7  <373e59421d983c93931cfbad87b1ae35> /System/Library/PrivateFrameworks/AccountSettings.framework/AccountSettings
0x30c29000 - 0x30c29fff  Accelerate armv7  <55b24cf91a8b3532bde6733c96f14c08> /System/Library/Frameworks/Accelerate.framework/Accelerate
0x30c4d000 - 0x30c96fff  libc++.1.dylib armv7  <5b690e5dd5a43a7fb166ade9fe58a7a4> /usr/lib/libc++.1.dylib
0x30c97000 - 0x30c9afff  libmacho.dylib armv7  <e52b77623bd031bc807e77029566c777> /usr/lib/system/libmacho.dylib
0x30c9b000 - 0x30d21fff  CoreMotion armv7  <6a9355d5a8e238b5b8f193605d509e15> /System/Library/Frameworks/CoreMotion.framework/CoreMotion
0x30d5b000 - 0x30d5cfff  DataMigration armv7  <d77f0e8f39ee37f5a2ac713a3fd9e693> /System/Library/PrivateFrameworks/DataMigration.framework/DataMigration
0x30d6f000 - 0x30daffff  libGLImage.dylib armv7  <40448706190031f6b0d9636cc11ee81d> /System/Library/Frameworks/OpenGLES.framework/libGLImage.dylib
0x30db0000 - 0x30db1fff  libsystem_blocks.dylib armv7  <9fdc27af7350323bbc7d98e14e027907> /usr/lib/system/libsystem_blocks.dylib
0x30dca000 - 0x30de9fff  libSystem.B.dylib armv7  <0c55744b6f7335eebba4ca2c3d10b43c> /usr/lib/libSystem.B.dylib
0x30dea000 - 0x30e22fff  VideoToolbox armv7  <9f25f38d1cd13a1daff99cfde8884410> /System/Library/PrivateFrameworks/VideoToolbox.framework/VideoToolbox
0x30ea9000 - 0x30eb0fff  StoreKit armv7  <1bc0c05f99a8309d90476b42263e3487> /System/Library/Frameworks/StoreKit.framework/StoreKit
0x30eb1000 - 0x3102ffff  Foundation armv7  <c40ddb073142315bb4ebb214343d0b7f> /System/Library/Frameworks/Foundation.framework/Foundation
0x3103b000 - 0x3103cfff  libdyld.dylib armv7  <977b0ad6f2f433108b4a0324a57cd2ab> /usr/lib/system/libdyld.dylib
0x3103d000 - 0x31052fff  libresolv.9.dylib armv7  <66f7557fa4b43979b186e00271839fdb> /usr/lib/libresolv.9.dylib
0x31053000 - 0x31078fff  OpenCL armv7  <ec915bfc3f7633dda61b5fc87459119b> /System/Library/PrivateFrameworks/OpenCL.framework/OpenCL
0x310bd000 - 0x310c3fff  MobileIcons armv7  <ed1b46f917903c9b9baaa2be4392dafe> /System/Library/PrivateFrameworks/MobileIcons.framework/MobileIcons
0x310c4000 - 0x310dafff  libdispatch.dylib armv7  <9ecfaef4110a3bf9a92d12f0fe8d1d78> /usr/lib/system/libdispatch.dylib
0x310db000 - 0x310e5fff  libbz2.1.0.dylib armv7  <40e4045fb79e382b8833707746cf28b1> /usr/lib/libbz2.1.0.dylib
0x310ec000 - 0x310f1fff  ApplePushService armv7  <f424c0340de637c08bbeb4f3bd8c6eaf> /System/Library/PrivateFrameworks/ApplePushService.framework/ApplePushService
0x31131000 - 0x31142fff  DataAccessExpress armv7  <e6144ba265da3bb7b9a263aa1a29b054> /System/Library/PrivateFrameworks/DataAccessExpress.framework/DataAccessExpress
0x31143000 - 0x31143fff  vecLib armv7  <a2cfe25e77aa36bfb4a30b2d0d2dd465> /System/Library/Frameworks/Accelerate.framework/Frameworks/vecLib.framework/vecLib
0x31149000 - 0x31186fff  FTServices armv7  <28ed78e01a77388cb4c0f2f6ec33482c> /System/Library/PrivateFrameworks/FTServices.framework/FTServices
0x311a6000 - 0x3121afff  MediaControlSender armv7  <87315c54b2293ab589950341ff91b45d> /System/Library/PrivateFrameworks/MediaControlSender.framework/MediaControlSender
0x3121b000 - 0x31257fff  AppSupport armv7  <311eac85b2a433a884dacba77217b49e> /System/Library/PrivateFrameworks/AppSupport.framework/AppSupport
0x313f2000 - 0x31416fff  PrintKit armv7  <08509c7bc915358b953de6f5cbef5c56> /System/Library/PrivateFrameworks/PrintKit.framework/PrintKit
0x3141a000 - 0x3144efff  MIME armv7  <d30292ea8f7e360fa5f5d5b1b62b602d> /System/Library/PrivateFrameworks/MIME.framework/MIME
0x31476000 - 0x3147afff  libGFXShared.dylib armv7  <998fccc16cf735dbb62324202995e193> /System/Library/Frameworks/OpenGLES.framework/libGFXShared.dylib
0x31485000 - 0x3152bfff  AddressBookUI armv7  <da424fecc66e3628ab03378ae80b38fc> /System/Library/Frameworks/AddressBookUI.framework/AddressBookUI
0x31550000 - 0x3158efff  IOKit armv7  <fcda71d29d6136dfbd84c1725f4998e5> /System/Library/Frameworks/IOKit.framework/Versions/A/IOKit
0x315f9000 - 0x315fafff  libdnsinfo.dylib armv7  <9aede8d6579d3430ac39ae5f95cce498> /usr/lib/system/libdnsinfo.dylib
0x316f8000 - 0x316fffff  AssetsLibraryServices armv7  <0703f561f9a038b6850d6e93bba7e5f4> /System/Library/PrivateFrameworks/AssetsLibraryServices.framework/AssetsLibraryServices
0x31700000 - 0x31701fff  libremovefile.dylib armv7  <402f8956975d3b6fb86ab9b31a43242c> /usr/lib/system/libremovefile.dylib
0x31767000 - 0x317b1fff  libvDSP.dylib armv7  <441b42aca07b3da39feab25f8349918f> /System/Library/Frameworks/Accelerate.framework/Frameworks/vecLib.framework/libvDSP.dylib
0x317e4000 - 0x31841fff  StoreServices armv7  <628fbbc73ed93730962c53bfbfde6794> /System/Library/PrivateFrameworks/StoreServices.framework/StoreServices
0x31a2d000 - 0x31b72fff  CoreGraphics armv7  <903545b89a7f311d95100ac7d1d44709> /System/Library/Frameworks/CoreGraphics.framework/CoreGraphics
0x31b98000 - 0x31ba7fff  GenerationalStorage armv7  <d84c3fd0e7bd36e78c256f2f4c5a4e91> /System/Library/PrivateFrameworks/GenerationalStorage.framework/GenerationalStorage
0x31ba8000 - 0x31c5efff  AVFoundation armv7  <35cb7a0eb1dc3554a777c1cc11cb0415> /System/Library/Frameworks/AVFoundation.framework/AVFoundation
0x31cad000 - 0x31d05fff  CoreAudio armv7  <be335e8eb6f93594b028a6ddd503a183> /System/Library/Frameworks/CoreAudio.framework/CoreAudio
0x31d06000 - 0x31d12fff  libCRFSuite.dylib armv7  <bdb2b4d1a78c39c1ba60d791207aed2a> /usr/lib/libCRFSuite.dylib
0x31d19000 - 0x31d1ffff  liblaunch.dylib armv7  <aa2bcba6fc7a36a191958fef2e995475> /usr/lib/system/liblaunch.dylib
0x31d20000 - 0x31d24fff  IOSurface armv7  <6ae77a40f8e93f28bc466ca93f5675d4> /System/Library/PrivateFrameworks/IOSurface.framework/IOSurface
0x31d3b000 - 0x31d5efff  Bom armv7  <c3435ecd2e5839f89de51edad0e1bb00> /System/Library/PrivateFrameworks/Bom.framework/Bom
0x31e2c000 - 0x31e30fff  AggregateDictionary armv7  <3a3a33f3a05538988c6e2bb363dc46a8> /System/Library/PrivateFrameworks/AggregateDictionary.framework/AggregateDictionary
0x31e43000 - 0x31e50fff  libbsm.0.dylib armv7  <750a0de73a733019a77144b805d4d2f8> /usr/lib/libbsm.0.dylib
0x32039000 - 0x32045fff  libz.1.dylib armv7  <36ce86a3dc8c344596c8c325615f374b> /usr/lib/libz.1.dylib
0x32092000 - 0x320a3fff  libxpc.dylib armv7  <ccf25b1e49ce3b2fa58d8c8546755505> /usr/lib/system/libxpc.dylib
0x320b6000 - 0x320b9fff  NetworkStatistics armv7  <7848d8ebad99367cb4f7f4e3fe88e5d6> /System/Library/PrivateFrameworks/NetworkStatistics.framework/NetworkStatistics
0x320ba000 - 0x3255cfff  UIKit armv7  <d72bcc68e76a3a55a963590cdcffe8cd> /System/Library/Frameworks/UIKit.framework/UIKit
0x32566000 - 0x3270cfff  CoreData armv7  <b0215b6d4d143859a2b313ecade095ec> /System/Library/Frameworks/CoreData.framework/CoreData
0x32789000 - 0x329b6fff  MediaToolbox armv7  <ec9bc89489763c6c93f86c5c490b2d69> /System/Library/PrivateFrameworks/MediaToolbox.framework/MediaToolbox
0x32d56000 - 0x32d5afff  CertUI armv7  <f503892ef60e36108d28d8f9d6144d2a> /System/Library/PrivateFrameworks/CertUI.framework/CertUI
0x32d81000 - 0x32d90fff  OpenGLES armv7  <e80acc691001301e96101bb89d940033> /System/Library/Frameworks/OpenGLES.framework/OpenGLES
0x32d91000 - 0x32d9bfff  libvMisc.dylib armv7  <e8248c797b9b363594bb652ddf7ce16d> /System/Library/Frameworks/Accelerate.framework/Frameworks/vecLib.framework/libvMisc.dylib
0x32da8000 - 0x32e0cfff  MessageUI armv7  <b74d79ea691a35ada276f063b7217a20> /System/Library/Frameworks/MessageUI.framework/MessageUI
0x3362b000 - 0x3366afff  QuickLook armv7  <802b1092542a3017a0380632502610d4> /System/Library/Frameworks/QuickLook.framework/QuickLook
0x3366b000 - 0x3366ffff  libcache.dylib armv7  <d6a7436ed8dc33d795c9b42baf864882> /usr/lib/system/libcache.dylib
0x33676000 - 0x33746fff  WebKit armv7  <6ff2796c2f933050ac6ecdee9fc6a216> /System/Library/PrivateFrameworks/WebKit.framework/WebKit
0x33822000 - 0x3386efff  CoreTelephony armv7  <e8eb52ca5fe33c7488a33efd222e7804> /System/Library/Frameworks/CoreTelephony.framework/CoreTelephony
0x33890000 - 0x338d8fff  CoreMedia armv7  <eb1f503312be3c93b07b2d0d25177000> /System/Library/Frameworks/CoreMedia.framework/CoreMedia
0x3397d000 - 0x33a6bfff  libiconv.2.dylib armv7  <2cfefe2ad1d335dd9549562910e7a2e2> /usr/lib/libiconv.2.dylib
0x33a6c000 - 0x33b43fff  CFNetwork armv7  <765a472c824830eea91b8f02d12867e4> /System/Library/Frameworks/CFNetwork.framework/CFNetwork
0x33c7c000 - 0x33cb8fff  IMFoundation armv7  <77bb4365a65b32a49523b03da0340dbc> /System/Library/PrivateFrameworks/IMCore.framework/Frameworks/IMFoundation.framework/IMFoundation
0x33cb9000 - 0x33ddefff  JavaScriptCore armv7  <2ffc6c87b94434288366bd53765ee267> /System/Library/PrivateFrameworks/JavaScriptCore.framework/JavaScriptCore
0x33e4e000 - 0x33e77fff  AppleAccount armv7  <2ba44023410231fcb3f72f762ea3ce6e> /System/Library/PrivateFrameworks/AppleAccount.framework/AppleAccount
0x33e91000 - 0x33e9dfff  CoreVideo armv7  <364fa32d513f3c11b50970120545f1a8> /System/Library/Frameworks/CoreVideo.framework/CoreVideo
0x34005000 - 0x3401bfff  DictionaryServices armv7  <6ed2e967136f37d4a4b9b318d6c43b83> /System/Library/PrivateFrameworks/DictionaryServices.framework/DictionaryServices
0x343b0000 - 0x34671fff  libLAPACK.dylib armv7  <0e94e9a7e7a334649afaccae0f1215a2> /System/Library/Frameworks/Accelerate.framework/Frameworks/vecLib.framework/libLAPACK.dylib
0x34672000 - 0x34688fff  libmis.dylib armv7  <258bc92be5823b239b4412dd42cb4807> /usr/lib/libmis.dylib
0x346aa000 - 0x346fbfff  libstdc++.6.dylib armv7  <c352af5a742e3c7a8d4d7e5f6f454793> /usr/lib/libstdc++.6.dylib
0x346fc000 - 0x34733fff  Security armv7  <eea56f71fde83c2981f9281dc7823725> /System/Library/Frameworks/Security.framework/Security
0x3474d000 - 0x3477dfff  ContentIndex armv7  <7a64670bb2ff3ee39ddee1dc1c72f92d> /System/Library/PrivateFrameworks/ContentIndex.framework/ContentIndex
0x3483d000 - 0x34842fff  libcopyfile.dylib armv7  <52e874396c393ed29099789ce702cfe2> /usr/lib/system/libcopyfile.dylib
0x3491d000 - 0x34923fff  MobileKeyBag armv7  <e1f06241ef0e3f0aae00f15df572077e> /System/Library/PrivateFrameworks/MobileKeyBag.framework/MobileKeyBag
0x34a1c000 - 0x34a66fff  ManagedConfiguration armv7  <5e0a131bbfec305ea01f9e01f486da63> /System/Library/PrivateFrameworks/ManagedConfiguration.framework/ManagedConfiguration
0x34a67000 - 0x34a93fff  libtidy.A.dylib armv7  <3aacc5b650e037c086a8ff6657d154bf> /usr/lib/libtidy.A.dylib
0x34a94000 - 0x34a9dfff  libMobileGestalt.dylib armv7  <4a15e845dc6f3a4a980de66c1cc44c42> /usr/lib/libMobileGestalt.dylib
0x34bd6000 - 0x34bedfff  WebBookmarks armv7  <bd20a05587783a8e9596eef1d3615ea7> /System/Library/PrivateFrameworks/WebBookmarks.framework/WebBookmarks
0x34bee000 - 0x34c06fff  Notes armv7  <724966ed5cd4395cb70f9c996b123f53> /System/Library/PrivateFrameworks/Notes.framework/Notes
0x34c99000 - 0x34cadfff  PersistentConnection armv7  <65682d21486836a3aa3e17b9461e7b3a> /System/Library/PrivateFrameworks/PersistentConnection.framework/PersistentConnection
0x34cb8000 - 0x34cedfff  DataAccess armv7  <89fd0c22338b37538cf61803a0bca9e2> /System/Library/PrivateFrameworks/DataAccess.framework/DataAccess
0x34cf1000 - 0x34d6afff  ProofReader armv7  <6db611d8df6530d480f97a40bc519f70> /System/Library/PrivateFrameworks/ProofReader.framework/ProofReader
0x34e78000 - 0x34e7bfff  CaptiveNetwork armv7  <f5cc4b97ce9432da9426f12621453325> /System/Library/PrivateFrameworks/CaptiveNetwork.framework/CaptiveNetwork
0x34e82000 - 0x34e98fff  libsystem_kernel.dylib armv7  <7ac5560851ce3cb3981068092074b409> /usr/lib/system/libsystem_kernel.dylib
0x34fe6000 - 0x350fdfff  CoreFoundation armv7  <6d450fe923d7387f8b01845e0edd713d> /System/Library/Frameworks/CoreFoundation.framework/CoreFoundation
0x35281000 - 0x352c6fff  GeoServices armv7  <a26be2e76e8730ab91a16502aba376be> /System/Library/PrivateFrameworks/GeoServices.framework/GeoServices
0x35412000 - 0x35447fff  SystemConfiguration armv7  <4464a4e3bb3f32f7abaa35ebf31fda49> /System/Library/Frameworks/SystemConfiguration.framework/SystemConfiguration
0x35448000 - 0x35591fff  libicucore.A.dylib armv7  <b70646b63f1f3b33896dd8cb91b8dab1> /usr/lib/libicucore.A.dylib
0x35599000 - 0x355e2fff  AddressBook armv7  <b17a2962e9043e0385c3c2c652155f2b> /System/Library/Frameworks/AddressBook.framework/AddressBook
0x358e8000 - 0x358eefff  liblockdown.dylib armv7  <9e45ce468a6f31e5b8263f2c224aa800> /usr/lib/liblockdown.dylib
0x358ef000 - 0x35aacfff  ImageIO armv7  <02e3578171fa3b6a969b244275fd2bab> /System/Library/Frameworks/ImageIO.framework/ImageIO
0x35ad7000 - 0x35ad9fff  MobileInstallation armv7  <215d93dbb0f63cbf828f9126eb7b5349> /System/Library/PrivateFrameworks/MobileInstallation.framework/MobileInstallation
0x35b3e000 - 0x35b61fff  MobileSync armv7  <e42604c550283f4aa517ae8f108b340f> /System/Library/PrivateFrameworks/MobileSync.framework/MobileSync
0x35baf000 - 0x35bfdfff  CoreLocation armv7  <44550ebedf23334d85441d9743b74e03> /System/Library/Frameworks/CoreLocation.framework/CoreLocation
0x35c07000 - 0x35cb5fff  Message armv7  <b8221d43401d315fb84398b7aa570fc1> /System/Library/PrivateFrameworks/Message.framework/Message
0x35dba000 - 0x35dbdfff  libsystem_network.dylib armv7  <356cb66612e836968ef24e6e5c3364cc> /usr/lib/system/libsystem_network.dylib
0x35f76000 - 0x3615afff  AudioToolbox armv7  <c91e27850452330ea804db6408840fd2> /System/Library/Frameworks/AudioToolbox.framework/AudioToolbox
0x3615b000 - 0x3615bfff  libunwind.dylib armv7  <e0a73a57795f3e1698a52ebe6fc07005> /usr/lib/system/libunwind.dylib
0x36299000 - 0x3629ffff  libnotify.dylib armv7  <9406297de3e43742887890662a87ab53> /usr/lib/system/libnotify.dylib
0x362d4000 - 0x362e3fff  MobileDeviceLink armv7  <70ac33720f513f0f97ea2279260678ca> /System/Library/PrivateFrameworks/MobileDeviceLink.framework/MobileDeviceLink
0x362e4000 - 0x362ecfff  ProtocolBuffer armv7  <0e846afacf823d2b8c029cc3010a8253> /System/Library/PrivateFrameworks/ProtocolBuffer.framework/ProtocolBuffer
0x362ed000 - 0x362f7fff  GraphicsServices armv7  <e21a6e61bdd136b6805a9e3abe2e3d1f> /System/Library/PrivateFrameworks/GraphicsServices.framework/GraphicsServices
0x362f8000 - 0x362fffff  MailServices armv7  <ab2388ce733e38b7a261273a401bbbf1> /System/Library/PrivateFrameworks/MailServices.framework/MailServices
0x3630d000 - 0x36323fff  EAP8021X armv7  <fffe86a22bc434a6ae84f23bfecef9d6> /System/Library/PrivateFrameworks/EAP8021X.framework/EAP8021X
0x3632a000 - 0x363ecfff  Celestial armv7  <2a59586b0ae937c3b25fe526924aa885> /System/Library/PrivateFrameworks/Celestial.framework/Celestial
0x364b7000 - 0x364bbfff  libAccessibility.dylib armv7  <9a17d07b5a3b38cfafdf16f78c99b572> /usr/lib/libAccessibility.dylib
0x364bd000 - 0x36583fff  libobjc.A.dylib armv7  <90014d1bc583366d85622e43097df416> /usr/lib/libobjc.A.dylib
0x36584000 - 0x36584fff  libgcc_s.1.dylib armv7  <eb82984fa36c329387aa518aa5205f3d> /usr/lib/libgcc_s.1.dylib
0x3659f000 - 0x365a2fff  ActorKit armv7  <434c756a6b053f4ba3c954cfccddbf59> /System/Library/PrivateFrameworks/ActorKit.framework/ActorKit
0x36631000 - 0x36636fff  CrashReporterSupport armv7  <2bb524b3bb3c3eb2932ce13b655b7c7c> /System/Library/PrivateFrameworks/CrashReporterSupport.framework/CrashReporterSupport
0x36738000 - 0x36758fff  libxslt.1.dylib armv7  <39348471007e39dab80af68b08390456> /usr/lib/libxslt.1.dylib
0x368bc000 - 0x368d9fff  libsystem_info.dylib armv7  <50863bcbf478323e96a8e5b1a83ea6f9> /usr/lib/system/libsystem_info.dylib
0x368da000 - 0x368e9fff  SpringBoardServices armv7  <ca5b10014b473d2eaec5c48d89ee1b54> /System/Library/PrivateFrameworks/SpringBoardServices.framework/SpringBoardServices
0x3692a000 - 0x3692afff  libCVMSPluginSupport.dylib armv7  <a80aaa9989483ce3a496a061fd1e9e0a> /System/Library/Frameworks/OpenGLES.framework/libCVMSPluginSupport.dylib
0x36a58000 - 0x36a59fff  CoreSurface armv7  <7850befd26b630f183ee326aaadd7b34> /System/Library/PrivateFrameworks/CoreSurface.framework/CoreSurface
0x36b47000 - 0x36b4afff  libcompiler_rt.dylib armv7  <b2c05d8601c13be884097192dca4e187> /usr/lib/system/libcompiler_rt.dylib
0x36b84000 - 0x36c75fff  QuartzCore armv7  <a2afbe6483683d05ad51b106f98776e2> /System/Library/Frameworks/QuartzCore.framework/QuartzCore
0x36cfa000 - 0x36cfbfff  libsystem_sandbox.dylib armv7  <66e985f3eea03ef08afb7cf4c153f76e> /usr/lib/system/libsystem_sandbox.dylib
0x36d3d000 - 0x36d41fff  FTClientServices armv7  <21de970d7ebb3e7fb502a0a5451b0806> /System/Library/PrivateFrameworks/FTClientServices.framework/FTClientServices
0x36d42000 - 0x36dcefff  libsystem_c.dylib armv7  <f859ce1ad1773f0ba98d7c6e135b7697> /usr/lib/system/libsystem_c.dylib
0x36dcf000 - 0x3758dfff  WebCore armv7  <814351ff217e3425a8e532c2e2251f73> /System/Library/PrivateFrameworks/WebCore.framework/WebCore
0x3795b000 - 0x3795ffff  Marco armv7  <8dea3e558fe534ff868fc92e215ce53b> /System/Library/PrivateFrameworks/Marco.framework/Marco
0x3799c000 - 0x37a46fff  libBLAS.dylib armv7  <bf822cc1a3243ae7b104cf73ca22d352> /System/Library/Frameworks/Accelerate.framework/Frameworks/vecLib.framework/libBLAS.dylib
0x37a5d000 - 0x37aa0fff  libcommonCrypto.dylib armv7  <95b49daf4cf038b6bea8010bba3a1e26> /usr/lib/system/libcommonCrypto.dylib
0x37acb000 - 0x37b78fff  libxml2.2.dylib armv7  <58d47f064e0232119f4b838ad659f9c1> /usr/lib/libxml2.2.dylib
0x37bb8000 - 0x37bc0fff  MobileWiFi armv7  <b76c3e9fb78234c392058250d4620e72> /System/Library/PrivateFrameworks/MobileWiFi.framework/MobileWiFi
0x37bc3000 - 0x37bc8fff  libsystem_dnssd.dylib armv7  <27bb5462450732e380f5a2c170546e93> /usr/lib/system/libsystem_dnssd.dylib
0x37c6c000 - 0x37cb0fff  MobileCoreServices armv7  <757226927a873d5492be721908077b48> /System/Library/Frameworks/MobileCoreServices.framework/MobileCoreServices
0x37d27000 - 0x37d8afff  IMCore armv7  <6e26e99b9b5f3829a8486ffd8c64f0d2> /System/Library/PrivateFrameworks/IMCore.framework/IMCore
0x37da5000 - 0x37e3efff  EventKit armv7  <d67aa1508ee7306b8e2a45c76ffddff0> /System/Library/Frameworks/EventKit.framework/EventKit
0x37eff000 - 0x37f01fff  libCoreVMClient.dylib armv7  <d4d4aa3090c83e87bcb15ed00b93fd5c> /System/Library/Frameworks/OpenGLES.framework/libCoreVMClient.dylib
0x37f1c000 - 0x37f1ffff  CoreTime armv7  <a398de5ba1e43a11b7008e9bb5a7f6fe> /System/Library/PrivateFrameworks/CoreTime.framework/CoreTime
4

3 回答 3

6

因此,一般来说,在主线程上执行繁重的工作会导致应用程序的 UI 锁定。操作系统正在寻找 applicationDidFinishLaunchingWithOptions 在合理的时间后返回。如果没有,它将杀死您的应用程序并为您提供 8badf00d 异常代码。看看你过去的时间;超过20秒!我得到 8badf00d 的启动时间不到 5 秒。

显然,您不会一直在所有设备上都遇到这种崩溃。如果您的设置依赖于互联网连接(就像我的那样),您可能会在尝试连接 Edge 或阴暗 WiFi 连接的设备上获取它。如果您正在处理大量繁重的图形内容,这也可能会超过加载时间阈值。您在 iOS5 中看到这一点的唯一原因可能是 Apple 降低了 iOS5 设备的加载时间最大限制(更好的硬件、更好的软件、加载时间也应该更好,可以提出论点)。我强烈建议在后台线程中启动设置。如果该设置是您的应用程序不可或缺的一部分,请考虑首先使用加载指示器加载启动屏幕,并在设置完成后删除该视图。从用户的角度来看,

其他选项是优化加载代码,使其在几秒钟内完成。但是如果你现在只有 20 秒,我认为不可能进行那么多优化。

更新:来自苹果文档:

网络应用程序中看门狗超时崩溃的最常见原因是主线程上的同步网络。这里有四个影响因素: 同步网络 - 这是您发出网络请求并阻止等待响应的地方。主线程——同步网络一般来说不太理想,但如果你在主线程上执行它会导致特定的问题。请记住,主线程负责运行用户界面。如果您长时间阻塞主线程,用户界面就会变得无法接受。长时间超时——如果网络刚刚消失(例如,用户在进入隧道的火车上),任何未决的网络请求都不会失败,直到某个超时到期。大多数网络超时以分钟为单位,这意味着主线程上的阻塞同步网络请求可以使用户界面一次保持几分钟无响应。试图通过减少网络超时来避免这个问题并不是一个好主意。在某些情况下,网络请求可能需要几秒钟才能成功,如果您总是提前超时,那么您将永远不会取得任何进展。看门狗——为了让用户界面保持响应,iOS 包含一个看门狗机制。如果您的应用程序未能及时响应某些用户界面事件(启动、暂停、恢复、终止),看门狗将终止您的应用程序并生成看门狗超时崩溃报告。看门狗给你的时间没有正式记录,但它总是少于网络超时。这个问题的一个棘手方面是它高度依赖于网络环境。如果您总是在网络连接良好的办公室测试您的应用程序,您将永远不会看到这种类型的崩溃。但是,一旦您开始将应用程序部署给最终用户——他们将在各种网络环境中运行它——这样的崩溃就会变得很普遍。警告 总而言之,如果您在主线程上进行同步网络调用,您的应用程序在部署到广泛的用户时将遭受看门狗超时崩溃。一旦你开始将你的应用程序部署给最终用户——他们将在各种网络环境中运行它——这样的崩溃就会变得很普遍。警告 总而言之,如果您在主线程上进行同步网络调用,您的应用程序在部署到广泛的用户时将遭受看门狗超时崩溃。一旦你开始将你的应用程序部署给最终用户——他们将在各种网络环境中运行它——这样的崩溃就会变得很普遍。警告 总而言之,如果您在主线程上进行同步网络调用,您的应用程序在部署到广泛的用户时将遭受看门狗超时崩溃。

于 2012-04-05T22:08:19.543 回答
2

正如其他人指出的那样,0x8badf00d这意味着某些事情使应用程序启动时间过长。

看起来有这个问题的用户在他们的偏好中存储了太多的东西(NSUserDefaults)。您不应该使用NSUserDefaults存储多个设置。您绝对不应该在其中存储大图像或二进制数据块!

崩溃日志显示读取和解析存储应用程序首选项的文件需要很长时间。通常这是因为文件太大。您的应用程序的首选项在第一次检查时会被读取,+[NSUserDefaults standardUserDefaults]一些 iOS 代码在启动时会执行此操作。(可能是为了检查语言偏好,或者是为了调试标志——但确切的原因并不那么重要,你第一次使用时仍然会遇到相同的行为NSUserDefaults。)

为了保存足够大的数据0x8badf00dCore Data可能是一个更好的 API。

于 2012-10-09T23:14:18.960 回答
0

我们刚刚隔离了一个与调用 Apple 服务器以检查应用内购买类似的启动崩溃。通过从销售中删除所有应用内购买,该应用重新开始为报告问题的用户运行。希望有帮助!

于 2013-10-31T15:16:11.397 回答