我有一个崩溃日志,表明我的应用程序在强行打开可选项的行中崩溃了。
func formattedTimeString(from seconds: TimeInterval) -> String {
let formatter = DateComponentsFormatter()
formatter.allowedUnits = [.hour, .minute, .second]
formatter.zeroFormattingBehavior = .dropLeading
formatter.unitsStyle = .positional
return formatter.string(from: seconds)!
}
请注意,上面的代码已经过简化,专注于基本组件。
documentation on that method没有提到返回值如何为零,尽管有一个可选的返回值。我测试了负值和非常大的输入值,但它没有返回nil。我该如何重现这个错误?
此SO question是迄今为止我能找到的唯一类似示例,但我认为这不适用于我的情况(我在崩溃报告中看不到该错误消息) 。这次崩溃只发生过几次,在一个频繁调用的地方(使用不同的TimeInterval
输入)。