2

我的应用程序有问题。我的应用程序正在使用互联网连接。当我从 Xcode 在设备中运行它时,它运行时不会崩溃。但是当我第一次安装它时它会运行,但是如果我关闭应用程序然后在加载启动画面后尝试再次运行它会崩溃。这是为什么?但是,当我通过设备中的 xcode 运行应用程序时,这是有效的。

但是当我使用 3G 而不是 wifi 时,它超出了启动画面

更新

Incident Identifier: 5AAF8220-55D5-4011-B14A-F9A86C624F7C
CrashReporter Key:   f0828a82293c0951598f3501da6c4cc391e66276
Hardware Model:      iPad1,1
Process:         mMusic [303]
Path:            /var/mobile/Applications/6D985396-5C2A-430D-B605-617EFA46A470/mMusic.app/mMusic
Identifier:      mMusic
Version:         ??? (???)
Code Type:       ARM (Native)
Parent Process:  launchd [1]

Date/Time:       2013-09-25 10:11:07.842 +0530
OS Version:      iPhone OS 5.1.1 (9B206)
Report Version:  104

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

Application Specific Information:
com.microimage.mMusic failed to launch in time

Elapsed total CPU time (seconds): 1.050 (user 1.050, system 0.000), 5% CPU 
Elapsed application CPU time (seconds): 0.237, 1% CPU

Thread 0 name:  Dispatch queue: com.apple.main-thread
Thread 0:
0   libsystem_kernel.dylib          0x357fb004 mach_msg_trap + 20
1   libsystem_kernel.dylib          0x357fb1fa mach_msg + 50
2   CoreFoundation                  0x357693ec __CFRunLoopServiceMachPort + 120
3   CoreFoundation                  0x35768124 __CFRunLoopRun + 876
4   CoreFoundation                  0x356eb49e CFRunLoopRunSpecific + 294
5   CoreFoundation                  0x356eb366 CFRunLoopRunInMode + 98
6   CFNetwork                       0x314ade14 CFURLConnectionSendSynchronousRequest + 340
7   Foundation                      0x34b304a6 +[NSURLConnection sendSynchronousRequest:returningResponse:error:] + 242
8   Foundation                      0x34b54356 -[NSData(NSData) initWithContentsOfURL:] + 178
9   Foundation                      0x34b85174 +[NSData(NSData) dataWithContentsOfURL:] + 36
10  mMusic                          0x0013b2a4 0xa5000 + 615076
11  mMusic                          0x0012fc34 0xa5000 + 568372
12  mMusic                          0x000a6b96 0xa5000 + 7062
13  UIKit                           0x32ecdca4 -[UIApplication _callInitializationDelegatesForURL:payload:suspended:] + 1176
14  UIKit                           0x32ec77d6 -[UIApplication _runWithURL:payload:launchOrientation:statusBarStyle:statusBarHidden:] + 402
15  UIKit                           0x32e95abc -[UIApplication handleEvent:withNewEvent:] + 1004
16  UIKit                           0x32e95560 -[UIApplication sendEvent:] + 48
17  UIKit                           0x32e94f34 _UIApplicationHandleEvent + 5820
18  GraphicsServices                0x33487224 PurpleEventCallback + 876
19  CoreFoundation                  0x3576951c __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE1_PERFORM_FUNCTION__ + 32
20  CoreFoundation                  0x357694be __CFRunLoopDoSource1 + 134
21  CoreFoundation                  0x3576830c __CFRunLoopRun + 1364
22  CoreFoundation                  0x356eb49e CFRunLoopRunSpecific + 294
23  CoreFoundation                  0x356eb366 CFRunLoopRunInMode + 98
24  UIKit                           0x32ec6864 -[UIApplication _run] + 544
25  UIKit                           0x32ec3cce UIApplicationMain + 1074
26  mMusic                          0x000a638c 0xa5000 + 5004
27  mMusic                          0x000a62e8 0xa5000 + 4840

Thread 1 name:  Dispatch queue: com.apple.libdispatch-manager
Thread 1:
0   libsystem_kernel.dylib          0x357fb3a8 kevent + 24
1   libdispatch.dylib               0x33b2eea4 _dispatch_mgr_invoke + 708
2   libdispatch.dylib               0x33b2ebc2 _dispatch_mgr_thread + 30

Thread 2 name:  WebThread
Thread 2:
0   libsystem_kernel.dylib          0x357fb004 mach_msg_trap + 20
1   libsystem_kernel.dylib          0x357fb1fa mach_msg + 50
2   CoreFoundation                  0x357693ec __CFRunLoopServiceMachPort + 120
3   CoreFoundation                  0x35768124 __CFRunLoopRun + 876
4   CoreFoundation                  0x356eb49e CFRunLoopRunSpecific + 294
5   CoreFoundation                  0x356eb366 CFRunLoopRunInMode + 98
6   WebCore                         0x37431c9c _ZL12RunWebThreadPv + 396
7   libsystem_c.dylib               0x349b472e _pthread_start + 314
8   libsystem_c.dylib               0x349b45e8 thread_start + 0

Thread 3 name:  com.apple.NSURLConnectionLoader
Thread 3:
0   libsystem_kernel.dylib          0x357fb004 mach_msg_trap + 20
1   libsystem_kernel.dylib          0x357fb1fa mach_msg + 50
2   CoreFoundation                  0x357693ec __CFRunLoopServiceMachPort + 120
3   CoreFoundation                  0x35768124 __CFRunLoopRun + 876
4   CoreFoundation                  0x356eb49e CFRunLoopRunSpecific + 294
5   CoreFoundation                  0x356eb366 CFRunLoopRunInMode + 98
6   Foundation                      0x34b30bb2 +[NSURLConnection(Loader) _resourceLoadLoop:] + 302
7   Foundation                      0x34b30a7a -[NSThread main] + 66
8   Foundation                      0x34bc458a __NSThread__main__ + 1042
9   libsystem_c.dylib               0x349b472e _pthread_start + 314
10  libsystem_c.dylib               0x349b45e8 thread_start + 0

Thread 4 name:  com.apple.CFSocket.private
Thread 4:
0   libsystem_kernel.dylib          0x3580b570 __select + 20
1   CoreFoundation                  0x3576d63a __CFSocketManager + 726
2   libsystem_c.dylib               0x349b472e _pthread_start + 314
3   libsystem_c.dylib               0x349b45e8 thread_start + 0

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

3 回答 3

17

看起来您的应用程序已被 Springboard 杀死,因为它在看门狗计时器到期之前未能启动。

Exception Codes: 0x8badf00d

Application Specific Information:
com.microimage.mMusic failed to launch in time

看起来您正在同步调用以在应用程序启动时下载数据。这会阻塞主线程,导致应用程序无法及时启动。您应该先让应用程序完全启动,然后在后台线程(而不是主线程)上启动网络调用。

从这些链接中阅读更多信息:Link1Link2

异常代码 0x8badf00d 表示应用程序已被 iOS 终止,因为发生了看门狗超时。应用程序启动、终止或响应系统事件的时间过长。造成这种情况的一个常见原因是在主线程上进行同步网络。线程 0 上的任何操作:都需要移至后台线程,或以不同方式处理,以免阻塞主线程。

希望有帮助!

于 2013-09-25T06:03:53.953 回答
3

如果你在你的崩溃日志中得到Exception Type: 00000020Exception Codes: 0x8badf00d,那么这是由于在主线程上运行同步任务。解决方案是在主线程上使用异步任务。

它被称为看门狗超时崩溃报告。您可以查看此Apple 文档以了解详细信息。

于 2016-04-15T10:32:54.720 回答
0

看到我们的 watchos 3 应用程序发生了类似的崩溃。

部分问题是很难获得完整的崩溃报告。只有当我能够可靠地重现崩溃并重复它 20 到 30 次时,我才得到一个带有堆栈跟踪的连贯崩溃报告。看到许多带有一些 json 的部分报告,包括内核、crashReporterKey、memoryPages 等,但只有一份带有堆栈跟踪的完整报告。

另一个问题,xcode 在调试时从未连接到设备。当然,该应用程序因启动时间太长而被杀死,因此调试器没有用。与模拟器相同的症状。

解决方案:我们在扩展委托的 applicationDidFinishLaunching 中激活了 wcsession。激活是异步的,所以我认为这没问题。将会话激活移至 applicationDidBecomeActive 已解决此问题。

于 2017-02-10T16:32:22.607 回答