使用C#Push的推送通知Sharp库在生产服务器上不起作用

Raj*_*esh 3 c# apple-push-notifications moonapns pushsharp

生成证书后,我只导出了Keychain访问中的私钥(没有证书),导出为.p12并使用了该文件,但没有工作.我只导出了证书并导出为.p12并使用了该文件,但它也没有用.

例外是:

您已选择生产服务器,但您的证书似乎不是生产证书!请检查以确保您拥有正确的证书!

如果我使用与MoonAPNS库相同的.p12,它可以正常工作,但不能与PUSHSHarp库一起使用.我只使用push sharp进行静音通知.

Red*_*dth 11

Apple推出了一种新的统一推送通知证书,该证书对Sandbox和Production服务器都有效.此新证书与主题名称略有不同(它曾用于包含Apple Production IOS推送服务Apple Development IOS推送服务,现在它包含Apple推送服务).

PushSharp 2.x不知道这种新格式,仍然希望旧的主题名称进行验证,因此它认为您的证书无效.

建议使用PushSharp 3.x(目前在NuGet上提供预发布),并正确验证新类型的证书.我建议更新到3.x版本(当然,这涉及到一些重大的API更改).

如果您仍然坚持使用PushSharp 2.x,则可以通过在类构造函数中将disableCertificateCheck参数设置为覆盖来覆盖证书验证.trueApplePushChannelSettings