我可以用succeffully通过沙箱APNS服务器推送夏普,但我有一个问题,将通知发送到我的iPhone设备。
我已经产生.CER或.p12文件,然后安装它们在我的Windows 8开发机成功。
我用这个教程在我的Windows 8设备安装证书。
昨天事情做工精细,我已成功发送通知。 关闭我的系统,然后第二天,当我尝试运行我得到以下异常的代码:
该消息是意外或格式pushsharp
我尝试提供不同的解决方案在谷歌,但没有任何帮助。 然后,我删除我的机器的证书,然后重新安装它们,事情开始重新工作。
为了使服务傻瓜证明我关闭系统,检查是否通知发送失败或没有,是它与同例外再次失败。
我再次删除证书和重新安装它们来解决此问题。 我不知道什么实际工作的问题? 是什么让PUSHSharp停止关机后发送通知。
注意:Windows firwall被禁用。 任何想法?
我一直在与PushSharp在过去的几个星期,都没有这个问题。 我的环境是Windows 7不过。 你已经创建了一个iPhone开发者计划门户网站相应的推送通知证书后,您应该已经下载了一个名字类似apn_developer_identity.cer文件。 如果你还没有这样做的话,你应该打开/导入此文件到钥匙扣,到您的登录部分。
最后,如果您筛选钥匙扣,以显示你的登录容器的证书,你应该看到您的证书中列出。 展开证书,应该有下面/连接到它的关键。
右键点击或Ctrl +单击相应的证书,然后选择导出。 钥匙扣会要求你选择一个密码导出到。 选择一个,并记住它。 您应该结束了与.p12文件。 您将需要此文件,您选择在这里使用的通知和反馈库的密码。
OpenSSL的
下面是如何使用开放SSL,你需要你的开发私有密钥(这可以从钥匙串导出)和CertificateSigningRequest ??创建一个PKCS12格式的文件。certSigningRequest
转换apn_developer_identity.cer(DER格式)到PEM:OpenSSL的X509 -in apn_developer_identity.cer -inform DER退房手续apn_developer_identity.pem -outform PEM}
接着,转换P12私钥为PEM(最少需要4炭密码的输入):OpenSSL的PKCS12 -nocerts -out private_dev_key.pem -in private_dev_key.p12
(可选):如果你想从私有密钥删除密码:OpenSSL的RSA退房手续private_key_noenc.pem -in private_key.pem
就拿证书和密钥(有或没有密码),并创建一个PKCS#12格式文件:OpenSSL的PKCS12 -export -in apn_developer_identity.pem -inkey private_key_noenc.pem -CertFile CertificateSigningRequest ?? certSigningRequest -name “apn_developer_identity” 退房手续apn_developer_identity或.p12
一旦您使用以下步骤生成P12文件,你不会真的需要它捕捉到您的控制台。 你只需要在你的代码修改如下:
var appleCert = File.ReadAllBytes("C:/Certificate/aps_dev_identity.p12");
希望这可以帮助。
我一直在努力MOON APNS 2012年以来,它的工作很好,但是从最近几天我收到以下错误信息
错误信息:System.Security.Authentication.AuthenticationException:呼吁SSPI失败,请参见内部异常。
System.ComponentModel.Win32Exception:接收到的消息是意外的或格式
解决方案:在PushNotification.cs文件替换
_apnsStream.AuthenticateAsClient(host, certificates, System.Security.Authentication.SslProtocols.Ssl3, false);
同
_apnsStream.AuthenticateAsClient(host, certificates, System.Security.Authentication.SslProtocols.Tls, false);
正如,我没有找到从苹果方面的任何证实,但是从github.com我找到解决办法,这和它的工作对我们来说。
这似乎是苹果贬值了“unsafer”协议SSL。
首先检查你是否能像C#代码执行通知这一块 ,再不用担心安装。 我有,当我试图执行的代码相同的消息,我也没在意安装,并确保我使用的.p12类型的证书和未加。质子交换膜,并确保中.P12它解决密码。 我现在可以从一个控制台C#应用程序在我的电脑发送通知给我的iPhone。