3

我完成了应用程序的开发过程,在将其发布到应用程序商店之前,我已经完成了几轮测试(IOS 版本 6.0.1 上的临时测试)。在进行临时测试时,我没有发现构建有任何问题。一切正常。提交到应用商店后,我收到了苹果团队的报告,说应用程序在 IOS 版本 6.1.3 的 iphone 5 上崩溃。所以我将我的 iphone 更新到 6.1.3 。更新到最新版本后,我将构建上传到 testflight 并从中下载了应用程序。它崩溃了。我从手机上卸载了该应用程序并直接连接到系统并直接通过 xcode 安装,没有任何代码更改。应用程序开始正常工作。我对崩溃背后的原因感到困惑。我确信这不是代码的问题,因为如果我直接通过 xcode 安装,相同的代码可以正常工作。通过 testflight 和直接从 xcode 安装应用程序有什么区别?可能是什么问题?我对崩溃日志进行了符号化,发现代码没有任何问题。有没有人遇到过类似的问题?如果得到修复请帮助我。您的帮助受到高度赞赏。谢谢下面是我的崩溃日志

Version:         ??? (???)
Code Type:       `enter code here`ARM (Native)
Parent Process:  launchd `enter code here`[1]
Date/Time:       2013-05-07 10:19:43.206 -0700
OS Version:      iOS 6.1.4 (10B350)
Report Version:  104
Exception Type:  EXC_BAD_ACCESS (SIGSEGV)
Exception Codes: KERN_INVALID_ADDRESS at 0x43462d40
Crashed Thread:  0
Thread 0 name:  Dispatch queue: com.apple.main-thread
Thread 0 Crashed:
0   libobjc.A.dylib                 0x3bc905d0 objc_msgSend + 16
1   Foundation                      0x348031dc _NSDescriptionWithLocaleFunc + 48
2   CoreFoundation                  0x33f7b42e __CFStringAppendFormatCore + 11158
3   CoreFoundation                  0x33ef289e _CFStringCreateWithFormatAndArgumentsAux +        

4   Foundation                      0x34802cf8 +[NSString stringWithFormat:] + 56
5   Nuedoo                          0x0002f8a2 -[VCache updateWithXML:] (VCache.m:122)
6   Nuedoo                          0x0003f00a -[VParser parseXMLFile:] (VParser.m:80)
7   Nuedoo                          0x0002ecda -[VBrowser open:] (VBrowser.m:23)
8   Nuedoo                          0x0002d6e8 -[Vaayoo_FrameworkAppDelegate:]   (Vaayoo_FrameworkAppDelegate.m:57)
9   UIKit                           0x35e09a9c -[UIApplication  _handleDelegateCallbacksWithOptions:isSuspended:restoreState:] + 248
10  UIKit                           0x35e09620 -[UIApplication _callInitializationDelegatesForURL:payload:suspended:] + 1164
11  UIKit                           0x35e0182e -[UIApplication _runWithURL:payload:launchOrientation:statusBarStyle:statusBarHidden:] + 694
12  UIKit                           0x35da9d1a -[UIApplication handleEvent:withNewEvent:]   + 1006
13  UIKit                           0x35da97a8 -[UIApplication sendEvent:] + 68
14  UIKit                           0x35da91ea _UIApplicationHandleEvent + 6194
15  GraphicsServices                0x37ac15f4 _PurpleEventCallback + 588
16  GraphicsServices                0x37ac1222 PurpleEventCallback + 30
17  CoreFoundation                  0x33f6f3e4 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE1_PERFORM_FUNCTION__ + 32
18  CoreFoundation                  0x33f6f386 __CFRunLoopDoSource1 + 134
19  CoreFoundation                  0x33f6e20a __CFRunLoopRun + 1378
20  CoreFoundation                  0x33ee1238 CFRunLoopRunSpecific + 352
21  CoreFoundation                  0x33ee10c4 CFRunLoopRunInMode + 100
22  UIKit                           0x35e00468 -[UIApplication _run] + 664
23  UIKit                           0x35dfd2b4 UIApplicationMain + 1116
24  Nuedoo                          0x00056efa main (main.m:14)
25  Nuedoo                          0x0002ce84 start + 36
Thread 1:
0   libsystem_kernel.dylib          0x3c189d98 __workq_kernreturn + 8
1   libsystem_c.dylib               0x3c0d7ad6 _pthread_workq_return + 14
2   libsystem_c.dylib               0x3c0d77f2 _pthread_wqthread + 362
3   libsystem_c.dylib               0x3c0d7680 start_wqthread + 4

Thread 2 name:  Dispatch queue: com.apple.libdispatch-manager
Thread 2:
0   libsystem_kernel.dylib          0x3c1795d0 kevent64 + 24
1   libdispatch.dylib               0x3c0b4d22 _dispatch_mgr_invoke + 806
2   libdispatch.dylib               0x3c0b0374 _dispatch_mgr_thread + 32

Thread 3:
0   libsystem_kernel.dylib          0x3c189d98 __workq_kernreturn + 8
1   libsystem_c.dylib               0x3c0d7ad6 _pthread_workq_return + 14
2   libsystem_c.dylib               0x3c0d77f2 _pthread_wqthread + 362
3   libsystem_c.dylib               0x3c0d7680 start_wqthread + 4

Thread 4 name:  WebThread
Thread 4:
0   libsystem_kernel.dylib          0x3c178e30 mach_msg_trap + 20
1   libsystem_kernel.dylib          0x3c178fd0 mach_msg + 48
2   CoreFoundation                  0x33f6f2b6 __CFRunLoopServiceMachPort + 126
3   CoreFoundation                  0x33f6e02c __CFRunLoopRun + 900
4   CoreFoundation                  0x33ee1238 CFRunLoopRunSpecific + 352
5   CoreFoundation                  0x33ee10c4 CFRunLoopRunInMode + 100
6   WebCore                         0x39ee9390 RunWebThread(void*) + 440
7   libsystem_c.dylib               0x3c0e20de _pthread_start + 306
8   libsystem_c.dylib               0x3c0e1fa4 thread_start + 4

Thread 0 crashed with ARM Thread State (32-bit):
r0: 0x1f5c0ab0    r1: 0x39a512ae      r2: 0x34004b3a      r3: 0xffffffff
r4: 0x43462d38    r5: 0x00000000      r6: 0x34004b3a      r7: 0x2fdd3178
r8: 0x2fdd367c    r9: 0x0e6944ab     r10: 0x3c307c20     r11: 0x1f5c0ca0
ip: 0x3c3b8704    sp: 0x2fdd3164      lr: 0x348031e1      pc: 0x3bc905d0
  cpsr: 0x20000030
</string>
<key>displayName</key>
<string>Nuedoo</string>
<key>name</key>
<string>Nuedoo</string>
<key>os_version</key>
<string>iPhone OS 6.1.4 (10B350)</string>
<key>system_ID</key>
<string></string>
<key>version</key>
<string>??? (???)</string>
</dict>
</plist> 
4

2 回答 2

11

直接通过 XCode 安装应用程序将使用您的“调试”配置(还取决于它在构建方案中的设置方式)。首先存档它,将使用您的 Adhoc/Release 配置。

编辑方案 编辑方案

这些配置可能在搜索路径、常量、预处理器宏和编译/构建期间使用的其他内容方面有所不同。

由于直接从 xcode 构建时运行良好,因此您可以查看运行构建配置(“调试”)和“存档”构建配置(上图中的“临时”)之间的差异。

<Multiple values>要查看您的配置之间的差异,请选择您的应用程序目标并使用(在“构建设置”选项卡 中)搜索字段在此处输入图像描述

您还可以将“运行”步骤设置为使用“发布”配置(具有接受您的设备的正确配置),在这种情况下,您应该能够在连接到 xcode 时捕获异常(并且可能有一个使用断点更好地查看导致它的原因)。

于 2013-05-15T12:35:47.370 回答
0

KERN_INVALID_ADDRESS 是一个错误的演员或僵尸对象。如果这是一个糟糕的演员阵容,它应该在调试和发布时崩溃。调试器可以隐藏一些内存错误。好消息是在发布版本中可重复崩溃。您只需要使用 Zombie Instrument 在 Instruments 中分析您的应用程序。

这是一个很好的教程: http ://www.dimzzy.com/blog/2011/02/hunting-down-zombies-in-ios-apps/

于 2013-05-16T06:15:19.763 回答