5
Gặp sự cố khi hiểu báo cáo sự cố trong Crashlytics.áp dụng một phần cho vụ đụng xe rác.
Đây là nhật ký sự cố:
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)
Và nguồn liên quan:
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)
}
}
Tôi đoán tôi đang làm điều gì sai với cách tôi đang sử dụng completionHandler? Nhưng nó không xảy ra với tất cả mọi người. Tôi không thể tái tạo sự cố, nhưng một vài người dùng của tôi đang nhận được sự cố.
Các nghi can ngay lập tức là những dấu chấm than. Tại dòng 10 đảm bảo rằng giá trị không bằng không –
Tôi đồng ý với @UriBrecher. Bạn đang nói 'thử!' Hai lần. Điều đó có nghĩa là "làm ơn làm tôi thất vọng". Bạn khó có thể ngạc nhiên khi Swift làm những gì bạn yêu cầu. – matt