在 Swift 崩溃日志中,"Arg = Exploded" 是什么意思?

10

我收到了来自Crashlytics/Fabric的崩溃日志,内容如下:

function signature specialization <Arg[0] = Exploded, Arg[1] = Owned To Guaranteed> of
MyClass.viewWillAppear (MyClass)(Swift.Bool) -> ()

Arg[0]中的exploded是什么意思?有两个参数很奇怪,因为我们在这里谈论的是viewWillAppear - 第一个参数是对象本身吗?


今天早上我也收到了同样的报告,你知道原因吗? - Husam
不好意思,我目前还不了解这方面的内容。 - swalkner
在我的情况下,这个崩溃只发生在物理 iPhone 5 设备上(但模拟器和其他设备都可以工作),所以我猜这是 Swift 中的一个 bug,所以我改变了代码以获得相同的结果。我的代码是将一个字符串分割成 x 和 y 值的数组,然后将它们转换为 CGFloat,然后在 CGRectMake() 中使用它们,这样就神奇地解决了问题。 - Husam
我也有这个问题。我自己从来没有复现过这个问题,只有一些用户遇到了这个问题。如果你找出了是什么问题,请告诉我们。@EwanMellor - 我认为那是不同的。至少我没有“死亡”这个部分。 - Robert Gummesson
@Robert 这完全是无害的,不会影响你。你需要注意的只是这个跟踪本身,而不是 Swift 用什么标记这些参数。请看我在 dupe 中的回答。 - CodaFi
1个回答

1
我在一周前遇到了这个问题,幸运的是我成功地远程解决了它。我认为这是一个解析问题。
问题出在我从服务器获取了一个字符串数组,其中一个参数为空,导致参数解析错误。
["String1", "String2", "String3",]
应该是
["String1", "String2", "String3"]
对于您的情况:查找您的viewWillAppear中的内容,并检查任何解析/序列化。一个返回的错误对象可能是根本原因。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接