首页 > 解决方案 > objc [29733]:Swift 类扩展和 Swift 类上的类别不允许在 ios 12.2 上运行 +load 方法 xcode 10.2

问题描述

我将我的 Xcode 更新到版本 10.2 (10E125),并且我现有的 swift 项目在 iPhoneX 模拟器 12.2 中运行时因“objc [29733] 崩溃:Swift 类扩展和 Swift 类上的类别不允许有 +load 方法”

标签: swift

解决方案


显然在 iOS 12.2 中你不能再使用了+ (void) load

您应该重构代码以使用__attribute__而不是+ (void) load.

旧答案给出了错误的答案,但有很好的谈话材料来理解问题。

我要求任何开发人员给出比这个更好的答案。我认为我缺乏知识是这个答案的减速带,但我的想法是至少开始就如何解决它提供一些见解!如果至少有一个开发人员可以让代码工作,那么我的工作就完成了 :)

================================旧答案================= ==================

这是一个已知的错误。似乎新的 12.2 不允许某些方法加载 swift 模块。

已经进行了修复,希望它进入 react native 59.3。(手指交叉。)

欲了解更多信息: https ://github.com/facebook/react-native/issues/24139

有一些临时解决方法请检查上面的链接。

==============================编辑旧答案================== ==============

react-native 59.3 刚刚发布,修复了这个错误,请更新。


推荐阅读