swift – 部分申请thunk Crash.
发布时间:2020-12-14 04:57:04 所属栏目:百科 来源:网络整理
导读:无法理解Crashlytics中的崩溃报告. 这是崩溃日志: Crashed: com.apple.main-thread0 Rekindlr 0x10007a728 ViewController.(user_info(Match?,completionHandler : (Bool?) - ()) - ()).(closure #1) (ViewController.swift:201)1 Alamofire 0x100156678 pa
无法理解Crashlytics中的崩溃报告.
这是崩溃日志: Crashed: com.apple.main-thread 0 Rekindlr 0x10007a728 ViewController.(user_info(Match?,completionHandler : (Bool?) -> ()) -> ()).(closure #1) (ViewController.swift:201) 1 Alamofire 0x100156678 partial apply for thunk (ResponseSerialization.swift) 2 Alamofire 0x10015891c specialized Request.(response<A where ...> (queue : OS_dispatch_queue?,responseSerializer : A,completionHandler : (Response<A.SerializedObject,A.ErrorObject>) -> ()) -> Self).(closure #1).(closure #1) (ResponseSerialization.swift:131) 3 libdispatch.dylib 0x1827614bc _dispatch_call_block_and_release + 24 4 libdispatch.dylib 0x18276147c _dispatch_client_callout + 16 5 libdispatch.dylib 0x182766b84 _dispatch_main_queue_callback_4CF + 1844 6 CoreFoundation 0x182cccdd8 __CFRUNLOOP_IS_SERVICING_THE_MAIN_DISPATCH_QUEUE__ + 12 7 CoreFoundation 0x182ccac40 __CFRunLoopRun + 1628 8 CoreFoundation 0x182bf4d10 CFRunLoopRunSpecific + 384 9 GraphicsServices 0x1844dc088 GSEventRunModal + 180 10 UIKit 0x187ec9f70 UIApplicationMain + 204 11 Rekindlr 0x10007d4e4 main (AppDelegate.swift:17) 12 libdispatch.dylib 0x1827928b8 (Missing) 以及相关来源: typealias CompletionHandler = (success: Bool) -> Void func user_info(match:(Match?),completionHandler:CompletionHandler) { var tind_id = match!.tinder_id var user_url = "(USER_INFO_URL)(tind_id)" Alamofire.request(.GET,user_url,headers: ["X-Auth-Token": tinder_token],encoding: .JSON) .responseJSON { response in let json = JSON(response.result.value!) var result = json["results"] var distance = result["distance_mi"].intValue let realm = try! Realm() try! realm.write { match?.distance_km = round(Double(distance) / 0.62137) } completionHandler(success: true) } } 我猜我在使用completionHandler时遇到了什么问题?但它不会发生在每个人身上.我无法重现崩溃,但我的一些用户正在获取它. 解决方法
同意@Uri和@matt – 如果你不知道do / catch语法,下面是这些行的实现方式:
do { let realm = try Realm() try realm.write { match?.distance_km = round(Double(distance) / 0.62137) } }catch { print(error) } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |