为什么在application:didRegisterForRemoteNotificationsWithDeviceToken中以NSData类型传递deviceToken?

Why deviceToken is passed in NSData type, in application:didRegisterForRemoteNotificationsWithDeviceToken?

为什么application:didRegisterForRemoteNotificationsWithDeviceToken中收到的deviceToken是NSData?

我们不是总是将其转换为NSString/String并发送到我们的后端吗?是否有任何其他用例使 Apple 使用 NSData 类型(而不是 NSString/String)?

谢谢。

查看the documentation,上面写着

The APNs servers require a binary format for performance reasons.

所以我假设他们的意图是避免循环中的两次转换:NSData 到 NSString,发送到服务器,服务器转换为二进制格式,发送到 APNs。

或者因为他们希望它是二进制格式,所以他们不妨以二进制格式给你。