3
aws.amazon.com/mobile/에 대한 최신 샘플 코드를 따라 가면서 Swift 3에 매우 잘 업데이트되지 않은 코드 항목이 많이 있습니다 (이는 꽤 기괴합니다 그들의 자원을 고려함). 그냥 실행에 충돌Amazon AWS Mobile 샘플 코드의 이상한 스위프트 3 문제
if (!isInitialized) {
AWSIdentityManager.defaultIdentityManager().resumeSession(completionHandler:
{(result: AnyObject?, error: NSError?) -> Void in
print("Result: \(result) \n Error:\(error)")
} as! (Any?, Error?) -> Void)
isInitialized = true
}
: 당신이 AWSMobileClient.swift에 올 때
이 같은 코드의 라인이있다.
다행히 내가 문제는이 그래서AWSIdentityManager.defaultIdentityManager().resumeSession(completionHandler:
{(result: Any?, error: Error?) -> Void in
print("Result: \(result) \n Error:\(error)")
} as! (Any?, Error?) -> Void)
같은 인수를 변경하여 문제를 해결할 수 있었다, 나는
실제로 그것을 캐스팅하려고 무의미한 것 같습니다 경고를 얻을 같은 유형으로 당신은 단순히 전혀 작동하지 않는 캐스트를
AWSIdentityManager.defaultIdentityManager().resumeSession(completionHandler:
{(result: AnyObject?, error: NSError?) -> Void in
print("Result: \(result) \n Error:\(error)")
}
isInitialized = true
삭제하면
는하지만, 당신은 이상한 구문 오류
1
2) 캐스트를 제거하거나 올바르게 작성하여 동일한 캐스트가 없으므로 경고가 표시되지 않도록하려면 어떻게해야합니까?
3) 해결책은 단지 as!
이 아닌 힘 (즉, as
)을 제거하는 것이지만 실제로 블록을 캐스팅해야하는 이유를 이해하지 못합니다.
주은 -> 내용 재설정하고 설정 ...,이 지워집니다 - 코드의 같은 라인에서, 아마존은 여기에 iOS 시뮬레이터에서 EXC_BAD_ACCESS를 얻을 경우, 시뮬레이터을 "코멘트 포함 동일한 번들 ID를 가진 다른 앱에 의해 저장된 불량 인증 토큰. " 내가 여기에서 묻는 문제는 완전히 그와 관련이 없다.