Ios 无法转换类型为';不安全指针';到预期的参数类型';RawPointer&x27;以迅捷的速度

Ios 无法转换类型为';不安全指针';到预期的参数类型';RawPointer&x27;以迅捷的速度,ios,swift,device,Ios,Swift,Device,我正在尝试获取设备令牌 首先,这是唯一的价值吗 我认识到这是一个独特的价值,并试图得到它。当我看到一个错误时,我正在沿着获取设备令牌的方法进行操作 func应用程序(application:UIApplication,DidRegisterForRemotionTificationswithDeviceToken deviceToken:Data){ let chars=UnsafePointer((deviceToken as NSData).bytes)//获取错误 var token=“

我正在尝试获取设备令牌

  • 首先,这是唯一的价值吗

    我认识到这是一个独特的价值,并试图得到它。当我看到一个错误时,我正在沿着获取设备令牌的方法进行操作

  • func应用程序(application:UIApplication,DidRegisterForRemotionTificationswithDeviceToken deviceToken:Data){
    let chars=UnsafePointer((deviceToken as NSData).bytes)//获取错误
    var token=“”
    
    对于0中的i..自Swift 3以来,您可以将
    数据
    转换为更简单的十六进制字符串

    func application(_ application: UIApplication, didRegisterForRemoteNotificationsWithDeviceToken deviceToken: Data) {  
        let token = deviceToken.map{ String(format: "%02x", $0) }.joined()
        print("Registration succeeded!")
        print("Token: ", token)
    }
    
    你的问题:

  • 该值会定期更改。如果您不管理发送推送通知的服务器,则不需要关心令牌

  • 谢谢,但这是一个在用户重新安装应用程序时不会更改的值吗?谢谢你修改后的答复。我想再问你一个问题。因此,如果我想获得一个在用户重新安装应用程序时不会更改的值,我如何获得它?基本上,当你重新安装应用程序时,该值不会更改,但你无法控制令牌。不是吗APN服务器可以随时发送新令牌。比较