Obj-C / Swift 项目中的致命陷阱异常

2024-05-21

我开始将 Swift 代码集成到我的 Obj-C 项目中。一切都进展顺利,但今天,当我更新到 Xcode 6.1 时,事情变得很糟糕。我从之前运行良好的 Swift 代码中收到了许多“陷阱”异常。

第一次崩溃位于我的 UIFont 扩展中。这是我的代码:

class func specialFont() -> UIFont {
    let font = UIFont(name: "FontName", size: 12.0)
    return font!
}

此代码在更新到 Xcode 6.1 之前工作正常,但现在崩溃了EXC_BREAKPOINT (code=EXC_ARM_BREAKPOINT), at dylddyld_fatal_error: 0x1fe1608c: trap。 (顺便说一句,我没有设置异常断点。)尝试继续程序执行不会生成崩溃日志,它只是进入生成该异常的无限循环。同样,在 Xcode 6.1 更新之前代码运行良好。

第二次车祸特别奇怪,因为它只发生在设备上调试时,而不是模拟器上。与上面相同的异常信息。这是崩溃的第二段代码:

let tap = UITapGestureRecognizer(target: self, action: "didTap")
self.addGestureRecognizer(tap)

谢谢你的帮助!

UPDATE

堆栈跟踪如下:

0] dyld_fatal_error
1] dyld_stub_binder
4] Project.FileWhereCrashTriggers.methodTriggeringCrash
5] @objc Project.FileWhereCrashTriggers.methodTriggeringCrash
6] -- continued trace up to call of method crashing

这些崩溃的一个奇怪的事情是它们不会在实际代码行上触发异常,正如您从堆栈跟踪中看到的那样。他们在 dyld_fatal_error 中中断。

我无法上传任何控制台输出,因为应用程序在 Xcode 中运行时实际上从未崩溃 - 它无休止地调用类似于 EXC_BAD_ACCESS。我在非调试模式下触发了崩溃,然后使用 Organizer 查看了设备日志,这就是它提供的内容:

异常类型:EXC_BREAKPOINT (SIGTRAP) 异常代码:0x0000000000000001、0x00000000e7ffdefe 线程触发:0

迪尔德错误消息: 未找到符号:__TFSSCfMSSFT21_builtinStringLiteralBp8byteSizeBw7isASCIIBi1__SS 引用自:/private/var/mobile/Containers/Bundle/Application/4ABA71F8-A6D1-4E4B-A452-DE339065310A/Project.app/Project

预计位于:/private/var/mobile/Containers/Bundle/Application/4ABA71F8-A6D1-4E4B-A452-DE339065310A/Project.app/Frameworks/libswiftCore.dylib 迪尔德版本:353.5


一个干净的构建为我解决了这个问题(从 XCode 中清理并删除设备上的应用程序)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Obj-C / Swift 项目中的致命陷阱异常 的相关文章

  • 如何在 IOS 中以编程方式滚动 UICollectionViewCell?

    我有一个垂直的UICollectionView每个细胞占据整个self view frame我可以轻松地向上滑动以翻页到下一个单元格 但我想通过按按钮来执行相同的操作 我尝试过使用 void setContentOffset CGPoint
  • IOS 应用程序提交导出合规性:Firebase

    我准备将我的应用程序提交到应用程序商店 经过一些研究后 我似乎仍然无法在我的应用程序中找到有关 firebase 的任何信息 Firebase 是否可以豁免 我只用它来进行分析和 Admob 那么 Firebase 是否使用加密 如果使用
  • 在 Swift 中, ! 是什么意思?函数签名中的符号是什么意思?

    在 Swift 函数签名中 什么是 争论后暗示 更具体地说 这是否意味着参数需要在传入之前解开 或者在传入时 自动 解开 这是一个示例 func annotationButtonTUI sender UIButton 在这种情况下 该函数是
  • 我何时以及为什么要使用 ARC 将局部变量声明为 __weak?

    Mike Ash 撰写了 ARC 简介 http www mikeash com pyblog friday qa 2011 09 30 automatic reference counting html他在那里介绍了这样的内容 weak
  • 将 Google 登录与两个目标结合使用

    我有一个问题一直无法解决 我到处都在寻找 我最近将 Google Sign in 添加到我的应用程序中 并且它在主目标上运行良好 但是 由于我使用多个目标来部署应用程序的辅助版本 因此无法将第二个包标识符添加到 GoogleService
  • 更改 UIImageView 的位置

    我怎样才能为 UIImageView 做一个简单的位置改变 假设当前坐标是 x 20 和 y 30 我想将其移至 x 100 和 y 100 可以制作运动动画吗 你需要改变它的CGFrameUIImageView就像这样 imageView
  • 将小箭头添加到 iPhone TableView 单元格中单元格的右侧

    这应该很简单 我有一个带有 TableView 的 iPhone 应用程序 如何将经典的小箭头添加到每个单元格的右侧 只需设置相应的附件类型的财产UITableViewCell cell accessoryType UITableViewC
  • Swift 2.0:协议扩展:具有相同函数签名的两个协议编译错误

    鉴于这两个协议及其扩展 protocol FirstDelegate func someFunc protocol SecondDelegate func someFunc extension FirstDelegate func some
  • 比较具有相同值但顺序不同的两个数组

    我有 2 个 nsarray 具有相同的值但顺序不同 NSArray array1 0 1 2 3 NSArray array2 2 3 1 0 我需要一种方法来确定两个数组是否具有不同顺序的相同值 Kind of BOOL isSameV
  • 如何将 OSX 上的 Xcode 更新到最新版本?

    在 OSX 上更新 Xcode 最简单的方法是什么 我在终端中看到这个 brew install xxxxxxx Warning Your Xcode 4 3 3 is outdated Please install Xcode 4 6 但
  • 如何更改 MGLPolyline 的颜色?

    如何更改 MGLPolyline 的颜色 我曾经看过here https stackoverflow com questions 32024464 customize mglpolyline using mapbox但答案不起作用 我还尝试
  • 动态图标 iOS [重复]

    这个问题在这里已经有答案了 可能的重复 每天更改图标 https stackoverflow com questions 4038305 changing icon per day 如何制作动态图标 例如在日历中 每天该数字都会更改为当前值
  • 添加 NSCoding 作为扩展

    我想扩展一个框架类 我不想直接编辑源代码 并使其符合NSCoding 基本上 这是我所处情况的简化 Can t be edited class Car NSObject var color String Can be edited exte
  • Android:iOS UIActionSheet 等效项

    我正在转换一个 iOS 应用程序 并且需要实现从 iOS 到 Android 的 UIActionSheet 的等效项 什么 UI 元素最能模仿这一点 我的目标是 Android 2 2 及更高版本 您将使用 AlertDialog 或 D
  • 在自定义对象中映射 JSON 对象

    我一直在搜索是否可以获取 JSON 字典或数组并将其直接映射到属性与 JSON 标签同名的自定义对象中 但我没有找到任何相关信息 我一直在手动解析 JSON 字典 如下所示 id deserializedObj nil id jsonObj
  • 图像高斯模糊 - iOS 8

    我有一个移动的背景图像 我想模糊它的底部 我would只用 Photoshop 就能做到 但由于图像会移动 效果不太好 这就是我的意思 看图片底部 基本上就像底座对 iPhone 的影响一样 我使用的是 iOS 8 但不是 Swift 我根
  • 如何在松开按钮后立即看到新的视频层?

    我有一个应用程序 用户可以按住按钮来拍摄视频 然而 当他们这样做时 带有视频播放的新图层不会立即出现 相反 有一个非常短的延迟 在用户松开按钮后 您可以看到相机仍然显示相机所看到的内容 延迟结束后 视频立即显示并开始播放 但是 我怎样才能使
  • 错误 ITMS-90207 Apple Store 提交

    当我在模拟器或设备上运行我的应用程序时 用于调试和发布构建配置 它可以完美运行 但是当我尝试将我的应用程序提交到 Apple Store 时 出现以下错误 错误 ITMS 90207 捆绑包无效 APPNAME app 处的捆绑包确实 不包
  • 等高的 SwiftUI HStack

    我想要Text 111 具有相同的高度VStack包含 2222 和 333 struct Test7 View var body some View HStack alignment top Text 111 Shall have equ
  • UILocalNotification 播放自定义声音

    我在我的应用程序中实现了本地通知 但我只是想知道是否有一种方法可以播放不属于 iPhone 应用程序主包的一部分的声音 基本上在我的应用程序中 我希望用户录制生成本地通知时播放的声音 而不是播放预先录制的或默认的声音 据我所知 这是可以实现

随机推荐