【发布时间】:2018-12-28 05:48:05
【问题描述】:
尽管它位于do-catch 块内,但以下代码会崩溃(并非总是但很少)。
Fabric crashlytics 声明异常是 Fatal Exception: NSInternalInconsistencyException 有时是 EXC_BAD_ACCESS KERN_PROTECTION_FAILURE 0x000000016fccb1f8
do {
return try NSAttributedString(
data: data,
options: [
.documentType: NSAttributedString.DocumentType.html,
.characterEncoding: String.Encoding.utf8.rawValue
],
documentAttributes: nil
)
} catch {
return NSAttributedString()
}
虽然我阅读了NSAttributedString 的苹果文档,但它声明它应该在主线程上,所以我用Dispatch.main.async 块包围它,但这样做并没有设置NSAttributedString 上设置的样式
【问题讨论】:
-
会不会是你的数据不对?
-
这似乎是不可能的,因为我无法复制该问题,并且根据来自数千名用户的应用中心,只有 58 名用户遇到了这些崩溃。
标签: ios swift swift4 crashlytics