ios - 从崩溃报告中调试函数中的崩溃
问题描述
我的问题是如何防止这种崩溃?
崩溃报告 我在应用商店中的实时应用程序崩溃了,我可以在 Organizer -> 崩溃:App Store > Release 点击打开它,我可以看到这个功能
fetchClientBalance() { (result, error) in
let (hour,min,secs) = secondsToHoursMinutesSeconds(seconds: Int(durationInSecs)) // Crash here
}
功能的实现是
func secondsToHoursMinutesSeconds (seconds : Int) -> (Int, Int, Int) {
return (seconds / 3600, (seconds % 3600) / 60, (seconds % 3600) % 60)
}
func fetchClientBalance(completed: @escaping ((_ result: Balance?, _ error: Error?) -> Void)) {
URLSession.shared.dataTask(with: url) { (data, response, error) in
if error != nil {
print("Error in fetching balance")
print(error!.localizedDescription)
completed(nil,error)
return
}
guard let data = data else {
print(error?.localizedDescription ?? "No data")
completed(nil,error)
return
}
do {
let resultData = try JSONDecoder().decode(Balance.self, from: data)
DispatchQueue.main.async {
completed(resultData,nil)
return
}
} catch let jsonError {
print("JSON Decoding Error")
print(jsonError)
completed(nil,jsonError)
return
}
}.resume()
}
解决方案
推荐阅读
- google-chrome - Chrome DevTools 协议:瀑布图
- javascript - Javascript - 呈现输入字段文本
- xml - 使用 Powershell 将值写入 xml 文件
- oracle - 如何在 oracle 中使用 utl_smtp 验证收件人电子邮件地址
- c++ - 为什么输出到 std::cout 不单步打印?
- bash - Docker 和 cron 环境
- php - Symfony 4 Doctrine LifecycleEventArgs getEntity() 与 getObject()
- mysql - 足球赔率的 MySQL 数据库设计
- javascript - 存储从外部相机拍摄的图像并将其存储在 DB - Ionic 3
- python - Python Selenium - 如何单击表格中一组元素中的倒数第三个元素?