2016-09-30 2 views
0
let tokenChars = UnsafePointer<CChar>(deviceToken.bytes) 
    var tokenString = "" 

    for i in 0..<deviceToken.length { 
     tokenString += String(format: "%02.2hhx", arguments: [tokenChars[i]]) 
    } 

    DDLogDebug("Device Token: \(tokenString)") 

^Это больше не работает. В основном потому, что больше нет устройстваToken.bytes.Как преобразовать данные apns в строку в Swift 3?

Я попытался выяснить, как использовать .withUsafeBytes, но я не могу.

Любая помощь будет фантастической, мне просто нужна строковая версия токена устройства, спасибо!

+0

Swift 3 решения здесь: http://stackoverflow.com/questions/7520615/how-to-convert-an-nsdata-into- ан-NSString-гекс-струна/38131414 # 38131414. –

ответ

0

Существует однострочный решение, deviceToken является Data

let tokenString = deviceToken.map{ String(format: "%02x", $0) }.joined() 
+0

Вы бог среди мужчин @vadian: D Когда время закончится, я отмечу это как лучший ответ –

+1

Нет ничего devine. Я просто прочитал руководство Swift Language Guide, Руководство по миграции и другую документацию ;-) – vadian

Смежные вопросы