Crashlytics Fabric错误地处理了从32位平台上的swift ios调用的throw std::异常

Crashlytics Fabric badly handles throw std::exception invoked from swift ios on 32 bit platforms

本文关键字:ios swift 调用 throw 异常 std 平台 错误 Fabric 处理 32位      更新时间:2023-10-16

我们在iOS 3.0.10版本的Fabric框架中遇到了一些问题。

当我们在32位iOS模拟器上调用它时(我们还没有在任何32位设备上测试过,但我们知道它在64位设备上有效):

try {
   throw std::exception();
} catch ( ... ) {
   // do smth with it ...
}

我们在线路上得到一个SIGABRT信号,上面写着"throw"。然而,在64位平台上一切都很好。

该代码是从swift调用的,我们使用最新的Xcode版本:6.3.2(6D2105)。

有没有办法在3.0.10版的Fabric上完成这项工作?

另外值得一提的是,它在Fabric 3.0.9版上运行得非常好

Fabric的Mike。

在Xcode 6.1-6.3中有一个链接器错误,WWDC的苹果工程师已经证实了这一点,并且在Xcode 7中已经确认了修复,在Xcode 6.4中还有一个潜在但未确认的修复。

如果您在链接应用程序时看到一条提到"个性功能"的警告,则可以看出您受到了影响。从3.0.10起,Crashlytics.framework不再使用受影响的Xcode版本构建。为了确保您不会受到此错误的影响,任何其他静态库以及您的主应用程序都不能用受影响的Xcode版本构建