没有收到生产证书的推送通知

Posted

技术标签:

【中文标题】没有收到生产证书的推送通知【英文标题】:Not Getting Push Notification for Production Certificate 【发布时间】:2014-05-05 11:35:41 【问题描述】:

我已阅读有关此主题的许多答案,但建议的解决方案无法解决问题。我的问题是我。相同的推送通知已成功获得开发证书。我特别想说的是,我的生产和开发环境的设备令牌是完全不同的。因此,相同的设备令牌没有问题。另外,我对两者都使用不同的配置文件。意思是说,应用级别没有配置问题。

我们使用 php 作为发送推送通知的服务器。

这是我的两个问题:

    服务器端是否缺少任何东西?哪个 PHP 服务器为开发环境成功发送推送通知,而对于生产环境,它的生成问题? 我是否缺少应用程序中的任何内容?

我会非常感谢你们所有人。我被困在这个问题上。非常感谢提前

【问题讨论】:

在PHP服务器中,您在发送通知时是否从APNs服务器收到任何错误? 您的应用在应用商店中上线了吗? @Natarajan App 已在 App Store 上线,没有推送通知相关的内容;因为它将在下一个版本中出现 你在 PHP 服务中使用的是什么 url? 你看看这个***.com/questions/12447025/… 【参考方案1】:

检查 iphone 推送通知的 php 函数...

function iphone_notification($deviceToken,$message,$not_type,$sound,$vibration_type)
            $passphrase = '******';
            $ctx = stream_context_create();
            stream_context_set_option($ctx, 'ssl', 'local_cert', 'ck.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);
            $body['aps'] = array('alert' => $message, 'sound' => $sound);
            $body['notification_type'] = $not_type;
            $body['vibration_type'] = $vibration_type;
            //1 = news;
            //99 = other;
            //echo $err."<br>".$errstr;
            $payload = json_encode($body);
            $msg = chr(0) . pack('n', 32) . pack('H*', $deviceToken) . pack('n', strlen($payload)) . $payload;
            $result = fwrite($fp, $msg, strlen($msg));
            fclose($fp);
    

【讨论】:

【参考方案2】:

我遇到了同样的问题。如果您的 .pem 文件正确,则使用以下设置您将收到推送通知。 (check terminal commands to make .pem)

//for development profile
$apns_url = 'gateway.sandbox.push.apple.com';

//for production you should use this
$apns_url = 'gateway.push.apple.com';s. 

更多详情请查看link1 >>link2 >>

【讨论】:

以上是关于没有收到生产证书的推送通知的主要内容,如果未能解决你的问题,请参考以下文章

Azure iOS 推送通知在生产模式下未收到?

企业应用程序处于生产状态时未收到推送通知

AdHoc 构建没有收到推送通知

phonegap build:没有收到 ios 推送通知

临时推送通知不起作用?

苹果推送通知不再到达