【问题标题】:Apple Push Notification Service APNS - Notifications not arrivingApple Push Notification Service APNS - 通知未到达
【发布时间】:2011-01-18 14:04:58
【问题描述】:

我正在尝试向我的应用添加推送通知。我正在使用临时配置文件。我的 appID 没有通配符。我正在使用以下 php 代码...

$deviceToken="****";masked
$time = time();

 $apnsHost = 'gateway.sandbox.push.apple.com'; 

$apnsPort = 2195;
$apnsCert = 'apns-dev-maui.pem';

$streamContext = stream_context_create();
stream_context_set_option($streamContext, 'ssl', 'local_cert', $apnsCert);

$apns = stream_socket_client('ssl://' . $apnsHost . ':' . $apnsPort, $error, $errorString, 2, STREAM_CLIENT_CONNECT, $streamContext);
if($apns)
{
echo "Connection Established<br/>";
$payload = array();
$payload['aps'] = array('alert' => 'It works!!', 'badge' => 1, 'sound' => 'default');
$payload = json_encode($payload);
$apnsMessage = chr(0) . chr(0) . chr(32) . pack('H*', str_replace(' ', '', $deviceToken)) . chr(0) . chr(strlen($payload)) . $payload;

        print "sending message :" . $apnsMessage . "<br/>";
        print "sending payload :" . $payload . "<br/>";
        fwrite($apns, $apnsMessage);

}
else
{       
        echo "Connection Failed";
        echo $errorString;
        echo $error;
}
// socket_close($apns);
fclose($apns);

不会产生连接错误。反馈渠道似乎没有任何消息。

我从组织者控制台和一个 NSLog 命令获得了 deviceTokens。此应用的通知显示在我的设置菜单中。

我有一个 ATT 3G 和一个旧的 2G,用作 iPod。都不行。

没有错误可看,我没有想法。有人有什么见解吗?

詹妮弗

【问题讨论】:

  • 我们可以使用两个不同的.pem(认证文件)来发送推送通知吗?这可能吗?

标签: php iphone push-notification apple-push-notifications


【解决方案1】:

我终于明白了。我正在使用带有 AdHoc 配置文件的 Sandbox。 Ad Hoc 显然被认为是生产而不是开发。我创建了推送生产证书,安装了它,瞧!它有效。

【讨论】:

  • 谢谢。快要彻底疯了! :)
  • Mups 你可以将自己的答案标记为正确,在这种情况下真的应该这样做:)
【解决方案2】:

Mups 的回答是对的。我想添加一个有同样问题的附加情况(以防它对其他人有帮助)。我有推送设置,它只在 1 部 iphone 上工作(不是其他的)。这非常令人费解。问题是 1 部工作的 iphone 安装了程序的“调试”版本,而其他 iPhone 安装了“临时”版本。我们的 APNS 服务器设置为使用“开发”证书和 gateway.sandbox.push.apple.com

我将服务器上的证书更改为“生产”证书,将主机更改为 gateway.push.apple.com

(然后删除所有设备上的所有配置文件,并安装“临时”版本的程序)

我们很高兴。

【讨论】:

    猜你喜欢
    • 2017-01-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-01-14
    • 1970-01-01
    相关资源
    最近更新 更多