Ho appena aggiornato da Xcode 7 a 8 GM e tra i problemi di compatibilità di Swift 3 ho notato che i token del mio dispositivo hanno smesso di funzionare. Adesso leggono solo "32BYTES".
func application(_ application: UIApplication, didRegisterForRemoteNotificationsWithDeviceToken deviceToken: Data)
{
print(deviceToken) // Prints '32BYTES'
print(String(data: deviceToken , encoding: .utf8)) // Prints nil
}
Prima dell'aggiornamento ero in grado di inviare semplicemente NSData al mio server, ma ora ho difficoltà ad analizzare effettivamente il token.
Cosa mi manca qui?
Modifica: sto solo testando la conversione in NSData e vedo i risultati attesi. Quindi ora sono solo confuso sul nuovo tipo di dati.
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
stampa semplicemente il filedescription
diNSData
. Ancora non ottieni una stringa da quello.