func application(_ application: UIApplication, didRegisterForRemoteNotificationsWithDeviceToken deviceToken: Data) {}
Run Code Online (Sandbox Code Playgroud)
我想deviceToken串
但:
let str = String.init(data: deviceToken, encoding: .utf8)
Run Code Online (Sandbox Code Playgroud)
str 是 nil
swift 3.0
我怎么才能让data来string?
在Xcode 8/Swift 3.0中注册推送通知? 没有工作,答案是几个月前,我曾尝试过:
并打印:
小智 147
我来寻找Swift 3 Data to String问题的答案,从来没有得到一个好的答案.经过一番愚弄,我想到了这个:
var testString = "This is a test string"
var somedata = testString.data(using: String.Encoding.utf8)
var backToString = String(data: somedata!, encoding: String.Encoding.utf8) as String!
Run Code Online (Sandbox Code Playgroud)
luh*_*iya 29
这是我的数据扩展.添加这个,你可以调用data.ToString()
import Foundation
extension Data
{
func toString() -> String?
{
return String(data: self, encoding: .utf8)
}
}
Run Code Online (Sandbox Code Playgroud)
Hog*_*mac 16
let str = deviceToken.map { String(format: "%02hhx", $0) }.joined()
Run Code Online (Sandbox Code Playgroud)
我找到了办法.您需要转换Data为NSData:
let characterSet = CharacterSet(charactersIn: "<>")
let nsdataStr = NSData.init(data: deviceToken)
let deviceStr = nsdataStr.description.trimmingCharacters(in: characterSet).replacingOccurrences(of: " ", with: "")
print(deviceStr)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
101055 次 |
| 最近记录: |