我正在尝试将推送通知添加到我的应用程序。我正在使用临时配置文件。我的 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。都不工作。
没有错误可看,我没有想法。任何人有任何见解?
珍妮弗