【问题标题】:Testflight - Universal Push Notification Client SSL Certificate - BadDeviceTokenTestflight - 通用推送通知客户端 SSL 证书 - BadDeviceToken
【发布时间】:2016-10-14 13:35:45
【问题描述】:

我打算在使用 TestFlight 时测试我的推送通知。

当我从 Xcode 直接部署到设备时,我可以在设备上成功接收推送通知。但是,当我通过 TestFlight(作为外部测试人员)将应用程序部署到设备时,我得到“BadDeviceToken”。

我创建了一个“通用推送通知客户端 SSL 证书”,并按照these Apple 的说明进行操作(我认为)。根据链接:

“生成的客户端 SSL 证书是一个通用证书,允许您的应用连接到开发生产环境。”

有人有什么想法吗?

谢谢

仅供参考:

相关应用服务:

iOS 证书:

【问题讨论】:

  • 如何发送通知?是什么让您出现“BadDeviceToken”错误?
  • 出于测试目的,我通过单元测试发送通知。我正在使用pushy。我将应用安装后返回的令牌复制到测试中。

标签: ios apple-push-notifications testflight pushy


【解决方案1】:

好的,这是我的愚蠢错误。我正在使用Pushy

您可以这样指定环境:

apnsClient.connect(ApnsClient.PRODUCTION_APNS_HOST);

不幸的是,我之前指定了 DEVELOPMENT_APNS_HOST。看起来,当您使用 TestFlight 时,您必须指定生产 apns 主机。

感谢所有查看问题并回答的人。

【讨论】:

    【解决方案2】:

    您应该尝试从头开始重新创建证书。确保证书是生产/分发的,而不是使用 APNS 沙箱。此外,请确保它在实际批准的设备上,而不是模拟器上。

    来自 APNS 文档:

    指定的设备令牌错误。验证请求是否包含 一个有效的令牌并且该令牌与环境匹配

    另外,看看这两个链接(第一个是旧的):

    iPhone APNS Device Tokens in sandbox vs. production

    https://salesforce.stackexchange.com/questions/119615/send-push-notifications-to-ios-using-apns

    【讨论】:

    • 谢谢杰克。我创建了一个“通用”证书,根据here 可用于“开发生产环境”。一定是遗漏了什么……?将通过链接查看。
    猜你喜欢
    • 2015-06-26
    • 2011-06-07
    • 1970-01-01
    • 1970-01-01
    • 2019-07-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多