【发布时间】:2016-01-14 07:01:14
【问题描述】:
我正在研究 crashlytics。按照堆栈跟踪并有他的错误:
HTTPManager.swift line 313
specialized HTTPManager.(createAuthenticationParameters in _F8C28254BDE35F2F2E746C55EB4303F3)() -> [String : AnyObject]
与:
Crashed: com.apple.main-thread
EXC_BREAKPOINT 0x000000010017c690
方法是这样的:
private func createAuthenticationParameters() -> Dictionary<String, AnyObject> {
var parameters = [String:AnyObject]()
if User.sharedInstance.facebookID != nil {
parameters["facebook_id"] = User.sharedInstance.facebookID!
} else if User.sharedInstance.email != nil {
parameters["email"] = User.sharedInstance.email!
}
parameters["auth_token"] = User.sharedInstance.authToken!
return parameters // LINE 313
}
什么可能导致它崩溃?我只是将值放入字典中。任何指针将不胜感激。谢谢
【问题讨论】:
-
你需要使用 "if let" 而不是 obj != nil
-
此文件第 313 行的代码行是什么。
-
@Avaan 编辑了我的问题。
-
@Atrash 抱歉我的问题有错误的代码。现在编辑它。它在返回线上崩溃。
-
可能是它试图在第 311 行解开一个 nil 可选然后崩溃?然而,崩溃报告称崩溃发生在第 313 行...
标签: ios swift crashlytics