【问题标题】:UDID for Push Notification instead of Device Token?推送通知的 UDID 而不是设备令牌?
【发布时间】:2013-08-06 08:04:41
【问题描述】:

我刚刚在 iOS 中成功实现了一个示例推送通知。目前,我在发送消息时使用了设备令牌。现在,我有一个关于推送通知要求的问题。我们可以使用设备的UDID 代替设备令牌进行推送通知吗?我知道设备令牌可以单独完成工作,但是否可以使用UDID 进行推送通知?苹果允许吗?

【问题讨论】:

    标签: ios push-notification apple-push-notifications udid


    【解决方案1】:

    不,您只能使用设备令牌。推送通知服务器 API 将仅接受设备令牌,并且还会通过检查证书来检查您是否被允许向该安装发送通知。

    设备令牌对于您的应用在特定设备上是唯一的。如果用户有多个设备,他/她也将拥有多个设备令牌(每次安装您的应用一个)。

    当用户删除您的应用并重新安装它时,设备令牌也可以更改。

    此外,UDID 不再可供开发人员使用,Apple 已限制 UDID 的使用,您可以再在代码中的任何位置使用 UDID。

    【讨论】:

      【解决方案2】:

      不,您不能将 UDID 用于推送通知。让我们了解一下这些东西到底是什么。

      UDID -(iOS 唯一设备 ID) 每部 iPhone 中的一个编号,开发人员使用该编号将新应用程序直接分发到手机中,以便在 App Store 上架之前进行测试。 UDID 用于创建 Apple 认证的配置文件,该文件与应用程序一起拖到 iTunes 中。

      UDID 在手机上不可见。它必须在 iTunes 中显示,并且不能像普通文本一样突出显示和复制。要检索 UDID,您需要执行以下操作:

      1. 将 iPad 连接到计算机,然后运行 ​​iTunes。
      2. 在“设备”列表中选择您的设备。在右侧,您将看到有关您设备的信息。
      3. 单击序列号。它将切换到显示您的 UDID。
      4. 按 Cmd-C 将 UDID 复制到剪贴板。

      注意:

      iTunes App Store 中提供 UDID 的任何应用都是假应用。 UDID 不能通过代码检索,正如上面定义的,它必须是 通过 iTunes 软件或 XCode 的连接设备列表手动获取。

      设备令牌 - 适用于 iOS 设备的 Apple 推送通知系统的标识符。每个设备都有两个设备令牌——一个用于开发,一个用于生产(临时或应用商店构建)。标记是 64 个十六进制字符。

      【讨论】:

      • gr8 答案,但您如何获取/找出 iPhone 的设备令牌?谢谢
      • @psuhas 这可以通过现在非常简单的代码来完成。您可以找到许多教程来找到它。
      【解决方案3】:

      设备令牌将在第三方服务器中注册,第三方服务器与 APNS 服务器通信。因此 Apple 服务器使用设备令牌与客户端通信。如果您传递 UDID 而不是设备令牌,它将失败。此外,Apple 限制访问设备 UDID。

      【讨论】:

        猜你喜欢
        • 2012-10-15
        • 2010-11-23
        • 1970-01-01
        • 1970-01-01
        • 2011-12-30
        • 1970-01-01
        • 2012-02-26
        • 1970-01-01
        相关资源
        最近更新 更多