【问题标题】:Live app store app push tokens being rejected by production APNS实时应用商店应用推送令牌被生产 APNS 拒绝
【发布时间】:2014-07-02 07:28:45
【问题描述】:

我在商店中有一个 iOS 应用程序正在使用产品 APNS 环境(在 iTunes 连接二进制详细信息中确认),这些应用程序提供了推送令牌,所以我必须假设应用程序中的所有内容都已正确配置,否则他们会收到“没有有效的‘aps-environment’权利字符串”错误。

我正在使用 Amazon SNS 发送推送通知,对于其他应用程序来说,推送通知运行良好,但对于这个特定应用程序,所有通知都返回“与端点关联的平台令牌无效”。

我已尝试通过重新颁发 SNS 用于连接到 APNS 的证书来解决此问题,确认它适用于生产环境 - 同样的问题。

我已尝试删除应用程序,重新颁发 Ad Hoc 证书(在生产环境中)并将其重新安装到我的手机上(删除具有相同应用程序 ID 的所有开发人员证书) - 我得到了相同的推送令牌,与同样的拒绝问题。

所有用户都会发生这种情况,包括那些从未安装过任何应用的沙盒版本的用户,因此令牌不能来自沙盒环境。我不明白为什么应用商店应用程序的令牌问题可能会被生产 APNS 拒绝?

【问题讨论】:

    标签: ios apple-push-notifications push amazon-sns


    【解决方案1】:

    好的,我终于找到了问题所在。 我同时设置了几个应用程序,因此为方便起见,我在为 SNS 创建 APNS 证书时重用了证书签名请求。 Apple 和 SNS 没有显示任何迹象表明证书存在错误,所以我认为它们很好,但除了第一个之外,其他所有证书都无效。

    由于 SNS 错误表明 token 无效,我认为证书没有任何问题,但是在使用新的 CSR 重新生成它们之后,一切都开始正常工作了。

    故事的寓意:

    证书签名请求只能使用一次,重复使用不会导致任何错误,但会生成无效的 APNS 证书。

    【讨论】:

    • 谢谢!!!正在疯狂地尝试调试它,并且做了和你一样的事情。
    • 100% 准确!
    • WTF - 一百万年后我永远不会猜到这会是原因。我总是尝试保留我的 CSR 文件,而不是浪费时间重新创建静态且不会改变的东西。我为 APNS 使用 JSON 令牌,所以我不会为此受苦,但现在让我三思而后行,将 CSR 用于证书/配置。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-05-03
    • 2014-03-28
    • 2012-12-18
    • 1970-01-01
    • 1970-01-01
    • 2017-08-27
    • 1970-01-01
    相关资源
    最近更新 更多