【发布时间】:2015-10-07 20:35:24
【问题描述】:
今天我发现我的项目有问题。我无法在真实设备上运行它,因为当它到达来自我正在使用的 pod 的代码部分时,我收到“无法识别的选择器发送到实例”错误。如果我使用此代码注释该部分,我可以运行该应用程序。 这里的问题是我之前没有遇到过这个问题,它只是无中生有。
在链接的框架和库下,我的 pod 链接为“可选”,因为如果将其标记为“必需”,我会收到“dyld:未加载库”错误。 Bitcode 也已启用,更改此设置没有任何区别。
目前我正在使用 XCode 7.0 (7A220) 和 Cocoapods 版本 0.38.2。
如果有任何关于此的提示,我会很高兴。
@编辑 我发现,我能够运行其他 pod。 PureLayout pod 出现了问题。
@Edit2 代码
class MainViewController: UIViewController {
var label : UILabel!
override func viewDidLoad() {
super.viewDidLoad()
self.setupView()
}
func setupView() {
self.view.backgroundColor = UIColor.whiteColor()
label = UILabel()
self.view.addSubview(label)
label.autoPinEdgesToSuperviewEdges()
}
}
此视图控制器在应用启动时显示。即使在这个简单的视图中,这段代码也代表了应用程序崩溃的整个情况 -
[UILabel autoPinEdgesToSuperviewEdges]: 无法识别的选择器发送到实例。
编辑 相同的代码适用于发布构建配置。有谁知道为什么?
【问题讨论】:
-
当我在发布构建配置上运行相同的代码时,它不会崩溃。有谁知道为什么?
-
“相同代码”是什么意思。它不再崩溃了吗?
-
'Same code' 是指我发布的那个。当我在发布版本上运行它时,它不会崩溃。它仍然在调试构建配置时崩溃。不明白为什么。
-
我真的很困惑。我一直在寻找所有这些事情的答案。在对项目进行太多更改后,我一直在恢复 git 存储库。它继续工作和失败。有时它在调试时工作,在发布时失败,但对此没有严格的条件。它刚刚开始工作,然后在再次恢复后一直失败。
标签: ios iphone xcode swift cocoapods