【问题标题】:App is crashing after successfully compile and build in Xcode在 Xcode 中成功编译和构建后应用程序崩溃
【发布时间】:2015-06-24 13:39:45
【问题描述】:

我的应用存在严重问题。它是在 2012 年底开发的——但现在我必须添加一些新的 SDK。我已经通过 CocoaPods 添加了所有内容。

虽然它编译和构建成功,但它在它之后崩溃而没有向我显示任何错误/警告消息。

我想了很久还是没找到办法。

这是我的 Xcode 告诉我的(崩溃后):

dyld_sim`dyld_fatal_error:
    0x1030c4000 <+0>: int3   
->  0x1030c4001 <+1>: nop    

这是我能看到的:

我还设置了错误断点:

但没有运气。

我已经在 main.m 和 AppDelegate.m 中设置了断点,但它并没有在这里停止。

这是构建设置 - 架构

有什么问题?

更新:

当我在具有 7.1 的 iPhone5 上运行它时收到以下消息。

信号 5 异常退出:Trace/BPT 陷阱:5

更新 2:添加了崩溃日志

Incident Identifier: 86E3767B-D6FD-4E31-A10A-3D1A87E66DFB
CrashReporter Key:   bbd8c85f9242cf76be887456c573dc6db1b5d9ef
Hardware Model:      iPhone5,1
Process:             MY_APP [587]
Path:                /var/mobile/Applications/D0526AD1-A61F-4951-B1D5-E508D10A2591/MY_APP.app/MY_APP
Identifier:          com.myapp.MY_APP
Version:             1.0.9.2 (1.0.1)
Code Type:           ARM (Native)
Parent Process:      launchd [1]

Date/Time:           2015-06-25 11:17:53.805 +0530
OS Version:          iOS 7.1.1 (11D201)
Report Version:      104

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

Dyld Error Message:
  Library not loaded: @rpath/XCTest.framework/XCTest
  Referenced from: /var/mobile/Applications/D0526AD1-A61F-4951-B1D5-E508D10A2591/MY_APP.app/MY_APP
  Reason: image not found
  Dyld Version: 324.1

Binary Images:
0x2be97000 - 0x2bebafff dyld armv7s  <4d05d388718832c99cdd4e74aeb07d51> /usr/lib/dyld
0x2f356000 - 0x2f458fff AVFoundation armv7s  <c88b12b244d13bbd9a8ab681956234e4> /System/Library/Frameworks/AVFoundation.framework/AVFoundation
0x2fa79000 - 0x2fa99fff Accounts armv7s  <73b0639b81fe30d5b2b13628d3df2273> /System/Library/Frameworks/Accounts.framework/Accounts
0x2fc1a000 - 0x2fc2bfff AssetsLibrary armv7s  <372ff89a2ede36aa85ce562f3e513f07> /System/Library/Frameworks/AssetsLibrary.framework/AssetsLibrary
0x30541000 - 0x30665fff CoreGraphics armv7s  <182ccc3a111d360eb5c1e58b4289afb3> /System/Library/Frameworks/CoreGraphics.framework/CoreGraphics
0x30988000 - 0x309d7fff CoreLocation armv7s  <5d78705a46ab313fa21f1d5ed2f0ce3f> /System/Library/Frameworks/CoreLocation.framework/CoreLocation
0x30a0f000 - 0x30a8afff CoreMedia armv7s  <d68d0cf856f13ff7ab9418ccd671cd65> /System/Library/Frameworks/CoreMedia.framework/CoreMedia
0x30b34000 - 0x30b8cfff CoreTelephony armv7s  <711db5ac808937b09143f43f11f06422> /System/Library/Frameworks/CoreTelephony.framework/CoreTelephony
0x30b8d000 - 0x30c1dfff CoreText armv7s  <43e84c5a90fc36a984363965f2d8029b> /System/Library/Frameworks/CoreText.framework/CoreText
0x30ded000 - 0x30fd7fff Foundation armv7s  <b75ca4f9d9b739ef9b16e482db277849> /System/Library/Frameworks/Foundation.framework/Foundation
0x31c27000 - 0x31cd2fff MessageUI armv7s  <42cf298919f134d888a001f1336c2550> /System/Library/Frameworks/MessageUI.framework/MessageUI
0x31cd3000 - 0x31d36fff MobileCoreServices armv7s  <1a736ebbc93431c8943cdd93a0a0fdcb> /System/Library/Frameworks/MobileCoreServices.framework/MobileCoreServices
0x3277e000 - 0x32786fff OpenGLES armv7s  <1c3e551d0a923b86940ad36a6e682463> /System/Library/Frameworks/OpenGLES.framework/OpenGLES
0x32971000 - 0x32ab8fff QuartzCore armv7s  <741ee0338b1235aab1550f91a3956041> /System/Library/Frameworks/QuartzCore.framework/QuartzCore
0x32b12000 - 0x32b54fff Security armv7s  <cd7187d315eb301e845cfae580ca905f> /System/Library/Frameworks/Security.framework/Security
0x32ca4000 - 0x32cf3fff SystemConfiguration armv7s  <82758c34b29a333bbdfe73e78361e0e1> /System/Library/Frameworks/SystemConfiguration.framework/SystemConfiguration
0x32cf4000 - 0x32cf5fff Twitter armv7s  <b6adeefeb05639abb4140fa07a92e705> /System/Library/Frameworks/Twitter.framework/Twitter
0x32cf6000 - 0x33469fff UIKit armv7s  <f725ad0982673286911bff834295ec99> /System/Library/Frameworks/UIKit.framework/UIKit
0x3a5d0000 - 0x3a61bfff libc++.1.dylib armv7s  <72615c78ae5f39dcbafa740d87035caf> /usr/lib/libc++.1.dylib
0x3af0a000 - 0x3afa1fff libsqlite3.dylib armv7s  <584eaf4090783a64b8a33125a6a976bd> /usr/lib/libsqlite3.dylib
0x3b0f0000 - 0x3b0fcfff libz.1.dylib armv7s  <578def3dfb6e3180b5f9d0cdacfea7ab> /usr/lib/libz.1.dylib

【问题讨论】:

  • 如果您将 7 岁以上的东西设置为基本 sdk 会发生什么?
  • 我已经在使用基本 sdk 7 运行它。它在 iOS7 中也崩溃了。 @ClaudioRedi
  • 在我使用 CocoaPods 之前,一切都是通过 git 添加的(作为子模块),但后来我更改了(并删除了子模块),以便我可以添加所需的新框架。所以我使用 CocoaPods 在我的应用程序中包含所有需要的框架。
  • 您在控制台上没有看到任何有用的信息?
  • 您能在DerivedData 中找到二进制文件并在其上运行otool -L 以查看它链接的库/框架吗?

标签: ios


【解决方案1】:

从我的项目中删除 OCMockSpectaExpecta 框架后,我就能够构建和运行应用程序,然后在 Command之前对派生数据进行全面清理和清理>+R 让它工作。谢谢大家的 2 美分 :)

更新:

执行此操作后 - 我无法调试我的应用程序。我应该只允许在release 模式下运行它。否则它会给我这个错误。

架构 i386 的未定义符号

【讨论】:

  • 哪些符号未定义?
  • 我添加到 pod 中的所有文件,即将未定义。
【解决方案2】:

您说您使用的是 IOS 7 SDK,但是您的基本 SDK 设置为 8.3

也许将其更改为 IOS 7 将修复该错误

【讨论】:

  • 是的,我想这就是我尝试在 XCode 6.3 中运行它的原因?我在那里只能看到 iOS 8.3。甚至 Clean + Build 似乎都不适合我。
【解决方案3】:

您的主要目标似乎正在链接到 XCTest.framework 但失败了。

1) 转到项目设置 -> 2) 转到您的应用程序主目标 -> 其他链接器标志 3) 删除“-framework XCTest” 4) 确保您的测试目标的“其他链接器标志”字段仍然包含“ -framework XCTest'

2) 检查 Images.xcassets 和其他资源,在文件检查器(右侧面板)中,查看“目标成员资格”,检查您是否选择了测试目标。

3) 尝试在您的项目中搜索XCTest,看看您设置了什么。

【讨论】:

  • 我的应用程序中没有任何测试用例。它之前已添加,但我已将其删除,因为我认为它会导致此问题。另外,对于您的第二点 - 我的应用程序中没有 Images.xcassets 文件夹,因为这是一个旧项目。但是,当我在我的应用程序中搜索 XCTest 时,我发现我通过 pod 添加的类中似乎很少使用它。我应该从 Pod 中删除这些文件吗?
  • 是的,我提供的是可以使用 XCTest 的东西。我们不知道您的项目设置,所以最后的手段总是全局搜索 XCTest 并查看已设置的内容。希望你好运!
  • @hagile 如果您正在使用它,这取决于您是否应该删除这些文件。通常我会选择先尝试修改设置不链接XCTest。
  • 是的,你是对的。但一切都是通过 CocoaPods 连接起来的。而且我不确定如何手动操作?
  • 进入Pods-TARGETS-[Pods-${Project name}Tests-${name}]-Build Settings,看看能不能修改或者链接。谷歌可能会帮助你。我不是这方面的专家。对不起
猜你喜欢
  • 2022-11-11
  • 1970-01-01
  • 1970-01-01
  • 2020-11-04
  • 2016-08-04
  • 1970-01-01
  • 2013-06-06
  • 1970-01-01
  • 2020-07-13
相关资源
最近更新 更多