发布构建崩溃,Swift,Armchair 框架,Xcode 6.2

Release build crash, Swift, Armchair framework, Xcode 6.2

我正在使用 Armchair 框架 (https://github.com/UrbanApps/Armchair) 作为我的应用程序的应用程序审查管理器。该应用程序是用 Swift 编写的(符合 Swift 1.1),我正在 运行ning Xcode 6.2,基本 SDK 8.2 和部署目标为 8.0。

我在构建应用程序 release/ad-hoc 时遇到一个奇怪的问题 - 应用程序在启动后立即崩溃。我用符号表示了崩溃日志,这是我所看到的-

Version:             1 (1.0)
Code Type:           ARM-64 (Native)
Parent Process:      launchd [1]

Date/Time:           2015-05-08 13:01:54.192 -0700
Launch Time:         2015-05-08 13:01:52.013 -0700
OS Version:          iOS 8.3 (12F70)
Report Version:      105

    Exception Type:  EXC_BREAKPOINT (SIGTRAP)
    Exception Codes: 0x0000000000000001, 0x00000001007643d8
    Triggered by Thread:  0

    Thread 0 name:  Dispatch queue: com.apple.main-thread
    Thread 0 Crashed:
    __TFC8Armchair7ManagerP33_0F5394B43958D8E2A7FE7B1C7DE959CE18defaultReviewTitlefS0_FT_SS Armchair.swift:1566
    __TFC8Armchair7ManagerP33_0F5394B43958D8E2A7FE7B1C7DE959CE18defaultReviewTitlefS0_FT_SS Armchair.swift:695
    __TFC8Armchair7ManagerP33_0F5394B43958D8E2A7FE7B1C7DE959CE15showRatingAlertfS0_FT_T_ Armchair.swift:699
    __dispatch_call_block_and_release + 20
    __dispatch_client_callout + 12
    __dispatch_main_queue_callback_4CF + 1604
    ___CFRUNLOOP_IS_SERVICING_THE_MAIN_DISPATCH_QUEUE__ + 8
    ___CFRunLoopRun + 1488
    _CFRunLoopRunSpecific + 392
    _GSEventRunModal + 164
    _UIApplicationMain + 1484
    11  <MyAppName>                 0x0000000100292560 0x1000e8000 + 1746272
    _tlv_get_addr + 176

当我 运行 直接从 Xcode 设备上 simulator/run 上的应用程序时,一切 运行 都很完美。

有任何人指点吗?

我要做的第一件事是更新到最新的 Xcode (6.3.1)。由于语言的变化,您将不得不四处奔波来修复您的 Swift。但此版本 Swift 还修复了一些内存管理错误,这些错误会导致 Release 版本崩溃(并且不会出现在 Debug 版本中)。

当然,如果您只有此第三方框架的编译代码,那可能无济于事。