방금 Xcode 7에서 8 GM으로 업데이트했으며 Swift 3 호환성 문제 중에 장치 토큰이 작동을 멈췄다는 것을 알았습니다. 이제는 '32BYTES'만 읽습니다.
func application(_ application: UIApplication, didRegisterForRemoteNotificationsWithDeviceToken deviceToken: Data)
{
print(deviceToken) // Prints '32BYTES'
print(String(data: deviceToken , encoding: .utf8)) // Prints nil
}
업데이트 전에 NSData를 내 서버로 간단히 보낼 수 있었지만 이제 실제로 토큰을 구문 분석하는 데 어려움을 겪고 있습니다.
내가 여기서 무엇을 놓치고 있습니까?
편집 : 나는 NSData로 다시 변환하는 것을 테스트하고 예상되는 결과를보고 있습니다. 이제 새로운 데이터 유형에 대해 혼란스러워합니다.
func application(_ application: UIApplication, didRegisterForRemoteNotificationsWithDeviceToken deviceToken: Data)
{
print(deviceToken) // Prints '32BYTES'
print(String(data: deviceToken , encoding: .utf8)) // Prints nil
let d = NSData(data: deviceToken)
print(d) // Prints my device token
}
NSData
간단하게하면 인쇄description
의를NSData
. 당신은 여전히 그것에서 문자열을 얻지 못합니다.