0

我的一个应用程序有问题,苹果拒绝了它,因为它在启动时崩溃了——但是我无法复制它。我什至为另一台设备提供了一个临时构建来测试,它工作正常。无论如何,他们发送了崩溃日志,我在 Organizer 中打开它以象征性。

异常类型:EXC_CRASH (SIGABRT) 异常代码:0x0000000000000000, 0x0000000000000000 线程崩溃:0

Last Exception Backtrace:
0   CoreFoundation                  0x3311d29e __exceptionPreprocess + 158
1   libobjc.A.dylib                 0x39dff97a objc_exception_throw + 26
2   CoreFoundation                  0x33120e02 -[NSObject(NSObject) doesNotRecognizeSelector:] + 166
3   CoreFoundation                  0x3311f52c ___forwarding___ + 388
4   CoreFoundation                  0x33076f64 _CF_forwarding_prep_0 + 20
5   diamondlite                 0x00065aec -[GADObjectPrivate loadPrivateRequest:autoRefresh:] (GADObjectPrivate.m:402)
6   diamondlite                 0x00067540 -[GADObjectPrivate loadRequest:] (GADObjectPrivate.m:827)
7   diamondlite                 0x0006501c -[GADBannerView loadRequest:] (GADBannerView.m:271)
8   diamondlite                 0x00012f40 -[GalleryViewControllerViewController viewWillAppear:] (GalleryViewControllerViewController.m:94)
9   UIKit                           0x38e94314 -[UIViewController _setViewAppearState:isAnimating:] + 132
10  UIKit                           0x38ea08bc -[UINavigationController _startTransition:fromViewController:toViewController:] + 828
11  UIKit                           0x38ea04a4 -[UINavigationController _startDeferredTransitionIfNeeded:] + 320
12  UIKit                           0x38e714dc -[UILayoutContainerView layoutSubviews] + 176
13  UIKit                           0x38e307fe -[UIView(CALayerDelegate) layoutSublayersOfLayer:] + 254
14  QuartzCore                      0x3ab04d5e -[CALayer layoutSublayers] + 210
15  QuartzCore                      0x3ab048fc CA::Layer::layout_if_needed(CA::Transaction*) + 456
16  QuartzCore                      0x3ab337a2 -[CALayer layoutIfNeeded] + 138
17  UIKit                           0x38eda0c4 -[UIViewController window:setupWithInterfaceOrientation:] + 204
18  UIKit                           0x38ed92b0 -[UIWindow _setRotatableClient:toOrientation:updateStatusBar:duration:force:isRotating:] + 3616
19  UIKit                           0x38ed8482 -[UIWindow _setRotatableClient:toOrientation:updateStatusBar:duration:force:] + 42
20  UIKit                           0x38ed840c -[UIWindow _setRotatableViewOrientation:duration:force:] + 64
21  UIKit                           0x3900e17c __57-[UIWindow _updateToInterfaceOrientation:duration:force:]_block_invoke_0 + 100
22  UIKit                           0x38e96674 -[UIWindow _updateToInterfaceOrientation:duration:force:] + 212
23  UIKit                           0x38e963b8 -[UIWindow setAutorotates:forceUpdateInterfaceOrientation:] + 688
24  UIKit                           0x38e95d26 -[UIViewController _tryBecomeRootViewControllerInWindow:] + 154
25  UIKit                           0x38e8ce9e -[UIWindow addRootViewControllerViewIfPossible] + 366
26  UIKit                           0x38e88ae0 -[UIWindow _setHidden:forced:] + 360
27  UIKit                           0x38eca1c4 -[UIWindow makeKeyAndVisible] + 56
28  diamondlite                 0x000112fc -[AppDelegate application:didFinishLaunchingWithOptions:] (AppDelegate.m:96)
29  UIKit                           0x38e8dacc -[UIApplication _handleDelegateCallbacksWithOptions:isSuspended:restoreState:] + 248
30  UIKit                           0x38e8d656 -[UIApplication _callInitializationDelegatesForURL:payload:suspended:] + 1186
31  UIKit                           0x38e8583e -[UIApplication _runWithURL:payload:launchOrientation:statusBarStyle:statusBarHidden:] + 694
32  UIKit                           0x38e2dc34 -[UIApplication handleEvent:withNewEvent:] + 1000
33  UIKit                           0x38e2d6c8 -[UIApplication sendEvent:] + 68
34  UIKit                           0x38e2d116 _UIApplicationHandleEvent + 6150
35  GraphicsServices                0x365a959e _PurpleEventCallback + 586
36  GraphicsServices                0x365a91ce PurpleEventCallback + 30
37  CoreFoundation                  0x330f216e __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE1_PERFORM_FUNCTION__ + 30
38  CoreFoundation                  0x330f2112 __CFRunLoopDoSource1 + 134
39  CoreFoundation                  0x330f0f94 __CFRunLoopRun + 1380
40  CoreFoundation                  0x33063eb8 0x3305b000 + 36536
41  CoreFoundation                  0x33063d44 0x3305b000 + 36164
42  UIKit                           0x38e84478 0x38e2a000 + 369784
43  UIKit                           0x38e812f4 UIApplicationMain + 1116
44  diamondlite                 0x00010dc2 main (main.m:16)
45  diamondlite                 0x00010d5c start + 36


Thread 0 name:  Dispatch queue: com.apple.main-thread
Thread 0 Crashed:
0   libsystem_kernel.dylib          0x32047350 __pthread_kill + 8
1   libsystem_c.dylib               0x39d9e11e pthread_kill + 54
2   libsystem_c.dylib               0x39dda96e abort + 90
3   libc++abi.dylib                 0x37fa7d4a abort_message + 70
4   libc++abi.dylib                 0x37fa4ff4 default_terminate() + 20
5   libobjc.A.dylib                 0x39dffa74 _objc_terminate() + 144
6   libc++abi.dylib                 0x37fa5078 safe_handler_caller(void (*)()) + 76
7   libc++abi.dylib                 0x37fa5110 std::terminate() + 16
8   libc++abi.dylib                 0x37fa6594 __cxa_rethrow + 84
9   libobjc.A.dylib                 0x39dff9cc objc_exception_rethrow + 8
10  CoreFoundation                  0x33063f1c CFRunLoopRunSpecific + 452
11  CoreFoundation                  0x33063d44 CFRunLoopRunInMode + 100
12  UIKit                           0x38e84478 -[UIApplication _run] + 664
13  UIKit                           0x38e812f4 UIApplicationMain + 1116
14  diamondlite                 0x00010dc2 main (main.m:16)
15  diamondlite                 0x00010d5c start + 36

最后它还说;

Thread 0 crashed with ARM Thread State (32-bit):
    r0: 0x00000000    r1: 0x00000000      r2: 0x00000000      r3: 0x3cbef534
    r4: 0x00000006    r5: 0x3cbefb88      r6: 0x1dd82414      r7: 0x2fdf2a14
    r8: 0x1dd823f0    r9: 0x00000300     r10: 0x00000000     r11: 0x000b55de
    ip: 0x00000148    sp: 0x2fdf2a08      lr: 0x39d9e123      pc: 0x32047350
  cpsr: 0x00000010

我只是不知道是什么导致了问题?因为我无法在我的设备上复制它,这使得它变得更加困难 - 我希望有人能提供帮助吗?

谢谢,

克里斯

4

3 回答 3

0

答案是将 Admob 横幅请求移动到 ViewDidAppear 部分,奇怪的是这似乎解决了它:)

于 2012-12-07T18:14:14.020 回答
0

我遇到了完全相同的问题,但导致它的原因略有不同。每当我从 XCode 运行应用程序时,它都运行良好,但 Appstore 继续拒绝它。

不幸的是,他们在正确的地方,并且应用程序在启动时确实崩溃了EXC_CRASH (SIGABRT) 异常代码: 0x0000000000000000, 0x0000000000000000

只有在我最终意识到存档构建使用与调试构建不同的构建设置之后,我才能够重现它。

我的错误是我重命名了我的故事板,开发人员仍然选择了它的一个版本,但存档构建没有。

从中吸取的教训:

  • 始终创建一个存档构建,您使用组织者中的临时分发分发它(不要使用您的分发签名实体对其进行签名。)
  • 将它创建的 IPA 文件拖到您的 iTunes 中
  • 从您的设备中删除应用程序
  • 将 IPA 创建的新应用程序部署到您的设备。

您现在正在运行将发送到 Appstore 的实际构建,并且应该能够重现其中一些令人讨厌的错误。

于 2013-05-12T08:41:47.517 回答
0

此问题与缺少 -ObjC 链接器标志有关。

因此,添加链接器标志 -objC 调试和发布(用于存档的配置文件)

您还可以使用临时配置文件测试您的发布二进制文件。

于 2013-10-04T07:25:48.233 回答