Я только что обновил с 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
}