iOS推送通知仅由开发设备接收

问题描述 投票:0回答:2

我有一个应用程序发送一些推送通知,实际上一切都像魅力和我的设备接收推送通知没有任何问题。

我按照here的说明进行开发,并使用pushok库来开发服务器端。

但我意识到其他设备都没有收到任何通知;只有我注册为开发设备的设备才能接收它们。

Device tokens是正确的,要么通过USB从Xcode运行应用程序,要么从AppStore安装提供相同的令牌,但它只适用于我的设备。

你有好主意吗?

UPDATE

我使用Auth Token进行APNS,而不是基于证书的身份验证,因此没有生产或沙箱选项。但是我仍然无法接收除开发设备之外的其他设备。

ios swift push-notification apple-push-notifications
2个回答
1
投票

请确保您使用正确的APNS证书进行不同的配置。

在开发设备中运行的应用程序将处于调试配置中,其APNS证书将指向gateway.sandbox.push.apple.com

Appstore将处于发布配置中,其APNS证书将指向gateway.push.apple.com而不是沙盒。

所以,请检查你的证书。

NWPusher是一个很好的工具,可以使用cert和deviceTokens测试推送通知而无需任何代码。希望它能帮到你。


0
投票

我发现了问题;如问题的更新部分所述,我没有使用基于证书的APNS,因此沙箱或生产证书不是问题。我使用Auth Token Key进行APNS,沙箱或生产之间没有任何区别。

除了pushok图书馆有一个生产或沙盒的标志,我错过了,忘了在沙箱。当我重新检查pushok的文档时,我看到了下面的代码

$client = new Client($authProvider, $production = false);

改为$production = true解决了我的问题。

© www.soinside.com 2019 - 2024. All rights reserved.