导出为 ipa 后设备令牌发生变化

Device token Changing after exported as ipa

大家好,我正在为我的应用程序使用 Apple 推送通知,我一直在努力解决设备令牌问题并且没有收到通知。

我成功创建了一个 .p12 密钥,然后我将它上传到 Amazon SNS,它运行良好,我也收到了通知。

问题 没有收到导出的 ipa 的通知。

当我 运行 和 xcode 它给了一些设备令牌(例如 xxx1111)。在我卸载旧的之后,我导出为 ipa,然后上传到 diawi.com 运行 它在同一设备中提供了一些不同的设备令牌(例如 yyy2222)。现在我只使用相同的 .p12 密钥将新设备令牌 (yyy2222) 复制到 Amazon SNS,现在我没有收到任何通知。

但是我再次从 diawi.com 删除了从 运行 安装的应用程序,然后我使用旧设备令牌 (xxx1111) 发送通知,它收到通知。

我的错误是什么?请帮助我。

TL;DR您可能没有将生产 APN 证书上传到您的 APN 提供商。

如果您 运行 来自 Xcode 的应用程序版本有效,但导出的版本无效,那么您可能只在 APN 提供商中设置了开发 APN 证书。导出的应用程序(无论是 Ad Hoc 还是 Enterprise)将使用生产证书,因此您的 APN 证书也应该是生产证书。

如果您尚未创建生产证书,请转到开发人员门户中的 Certificates, Identifiers & Profiles,点击 Production 并选择 Apple Push Notification service SSL (Sandbox & Production):

p.s。令牌 应该 在应用程序的开发版本和分发版本之间更改。