问:[iOS]我可以同时向调试和Ad Hoc构建发送推送通知吗?

时间:2018-03-22 18:50:02

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

通过Salesforce我可以发送推送并通过Xcode构建的调试版本接收它,如果我使用开发APNS证书,如果我使用prod(Apple推送服务)APNS证书,我可以在Ad Hoc版本上接收它,但是我似乎无法同时做到这两件事。在创建Apple Push Services产品证书时,它表示它可以用于沙盒和生产,所以我希望我可以同时发送到调试和临时构建。

1 个答案:

答案 0 :(得分:1)

发送推送时,涉及三件事需要协调一致。

您可以将dev推送证书与调试版本结合使用,并通过Apple沙盒开发环境发送推送。

OR

你有一个prod推送证书与发布版本相结合,推送是通过Apple prod环境发送的。

或者您不使用证书但使用推送密钥,可以通过两种环境发送。

但Apple环境需要匹配,如果应用程序是prod或dev build,那么应用获取的推送令牌就不同了。

您无法混合和匹配任何这些内容,否则推送将无法发送到应用程序。

同时发送推送到调试和发布版本的唯一方法是服务器发送推送两次 - 一次使用apple prod网络上的prod证书,一次使用苹果沙箱网络上的dev证书。这两次推送中的一次将失败,另一次将成功。

或者,当您的应用与服务器联系并向其发送推送令牌时,它还会指示该令牌是用于发布版本还是应用程序的调试版本,然后服务器使用相应的证书和Apple网络发送推送

(“当创建Apple Push Services产品证书时,它表示它可用于沙箱和生产”根据我的经验,情况并非如此,除非这是一项新功能。无论如何,Apple环境和应用程序构建仍然需要对齐)。