dyld:未找到符号:_UITransitionContextFromViewControllerKey

时间:2015-03-01 21:42:55

标签: ios iphone ios6 crash dyld

我一直在收到关于我的应用程序在iOS 6中加载时崩溃的报告。它是使用iOS 8 SDK构建的,可以在7& 8。 我刚刚设法得到一个iOS 6设备进行测试,事实上它确实在启动时崩溃并出现错误:

  

dyld:未找到符号:_UITransitionContextFromViewControllerKey
  参考自:   /var/mobile/Applications/895BC1B3-A362-42C9-8560-5CF40A682A10/myapp.app/MyApp   预计在:/System/Library/Frameworks/UIKit.framework/UIKit中   /var/mobile/Applications/895BC1B3-A362-42C9-8560-5CF40A682A10/myapp.app/MyApp

我理解dyld是一个链接器问题,但不知道从哪里开始。 我已取消关联并重新添加了UIKit,但仍无效。

由于

2 个答案:

答案 0 :(得分:1)

这是因为UITransitionContextFromViewControllerKey不存在until iOS 7。解决这个问题可能并不值得 - 它意味着放弃UIViewControllerContextTransitioning的所有使用,因为协议是iOS 7中的新功能,或者为iOS 6创建单独的代码路径。如果这样做'你想要什么,看看weak-linking UIKit,虽然这可能是result in slow startup

答案 1 :(得分:0)

看起来像你在使用UIViewControllerContextTransitioning。它仅适用于iOS 7+。

有关详细信息,请参阅此问题Restore pre-iOS7 UINavigationController pushViewController animation