我刚刚在 iOS 中成功实现了一个示例推送通知。目前,我在发送消息时使用了设备令牌。现在,我有一个关于推送通知要求的问题。我们可以使用UDID
设备的推送通知而不是设备令牌吗?我知道设备令牌可以单独完成工作,但可以UDID
用于推送通知吗?苹果允许吗?
3 回答
不可以,您只能使用设备令牌。推送通知服务器 API 将仅接受设备令牌,并且还将通过检查证书来检查您是否被允许向该安装发送通知。
设备令牌对于您的应用在特定设备上是唯一的。如果用户有多个设备,他/她还将拥有多个设备令牌(每次安装您的应用程序一个)。
当用户删除您的应用并重新安装它时,设备令牌也可以更改。
此外,UDID 不再可供开发人员使用,Apple 限制了 UDID 的使用,您可以再在代码中的任何位置使用 UDID。
不,您不能将 UDID 用于推送通知。让我们了解这些东西实际上是什么。
UDID -(iOS 唯一设备 ID)每部 iPhone 中的一个编号,开发人员使用该编号将新应用程序直接分发到手机中,以便在 App Store 上架之前进行测试。UDID 用于创建 Apple 认证的配置文件,该文件与应用程序一起拖到 iTunes 中。
UDID 在电话上不可见。它必须在 iTunes 中显示,并且不能像普通文本一样突出显示和复制。要检索 UDID,您需要执行以下操作:
- 将 iPad 连接到计算机,然后运行 iTunes。
- 在“设备”列表中选择您的设备。在右侧,您将看到有关您设备的信息。
- 单击序列号。它将切换到显示您的 UDID。
- 按 Cmd-C 将 UDID 复制到剪贴板。
笔记:
iTunes App Store 中提供 UDID 的任何应用程序都是假应用程序。UDID 不能通过代码检索,如上所述,它必须通过 iTunes 软件或 XCode 的连接设备列表手动获取。
设备令牌 -适用于 iOS 设备的 Apple 推送通知系统的标识符。每个设备都有两个设备令牌——一个用于开发,一个用于生产(临时或应用商店构建)。标记是 64 个十六进制字符。
设备令牌将在第三方服务器中注册,第三方服务器与 APNS 服务器对话。因此 Apple 服务器使用设备令牌与客户端通信。如果您传递 UDID 而不是设备令牌,它将失败。此外,Apple 限制访问设备 UDID。