我一直在开发一个使用推送通知的应用。我一直在乱搞ALOT试图修复愚蠢的配置东西,我真的不知道什么是什么了。
我设法修复了整个开发推送通知。现在,我们即将发布。但是,切换到生产通知并不像预期的那样顺利。我仍然不太了解整个配置事项。
我以为我只需要用新的.pe和.p12文件生成一个新的.pem文件,并从它试图连接的URL中删除“沙盒”。这导致我的.php中发送推送的“连接失败:0”。
.PHP
$ctx = stream_context_create();
stream_context_set_option($ctx, 'ssl', 'local_cert', 'dp.pem')
stream_context_set_option($ctx, 'ssl', 'passphrase', $passphrase);
$fp = stream_socket_client(
'ssl://gateway.push.apple.com:2195', $err,
$errstr, 60, STREAM_CLIENT_CONNECT|STREAM_CLIENT_PERSISTENT, $ctx);
if(!$fp)
exit("Failed to connect: $err $errstr" . PHP_EOL);
在搞乱.p12和.cer以及.cert和.pem以及.mobileprovision .ipa之后,我真的不知道该怎么做了..为什么我们必须转换为.pem并合并它们?这真的是苹果打算让我们这样做的方式吗?或者我一直在关注漂亮的redicolus教程吗?
我需要什么.cer文件?应用程序应使用哪个配置文件? AppID与配置vs设备与证书。到底是什么..除了切换到新的.pem文件并删除“沙盒”之外,我还应该做什么。我已经从门户激活并下载了“Production Push SSL Certificate”,并从中生成了我的.pem文件。我已经尝试过读这篇文章了,但它真的很难并且是一个愚蠢的设置!我确定我做错了什么。但无法弄清楚是什么,在哪里以及为什么!