有人可以澄清APN(Apple推送通知)所要求的内容吗?
文档说它会在连接完成后立即开始发送.这是否意味着我不fread()对其进行操作?
这是我当前尝试阅读它的代码.我没有放入fread()循环,因为我不知道什么响应表明"没有更多的记录可读",我不想在我的服务器上进行无限循环.
<?php
$apnsCert = 'HOHRO-prod.pem';
$streamContext = stream_context_create();
stream_context_set_option($streamContext, 'ssl', 'local_cert', $apnsCert);
stream_context_set_option($streamContext, 'ssl', 'verify_peer', false);
$apns = stream_socket_client('ssl://feedback.push.apple.com:2196', $error, $errorString, 60, STREAM_CLIENT_CONNECT, $streamContext);
echo 'error=' . $error;
echo 'errorString=' . $errorString;
$result = fread($apns, 38);
echo 'result=' . $result;
fclose($apns);
?>
Run Code Online (Sandbox Code Playgroud)
到目前为止,我得到的只是一个空回复.没有错误,所以它是连接.
我不知道null回复是否意味着没有数据,或者我的方法fread()是错误的.
谢谢
我还有一个疑问APNS.这是当应用程序首次启动应用程序请求Apple推送通知权限时,如果用户接受了他们可以接收通知.如果用户取消他们无法收到任何通知.我清楚吗?
现在我的怀疑是,
如果用户第一次如果Cancel他们想要接收Apple推送通知,则在几天后再次从应用程序(单击按钮)取消推送通知服务时,可以从应用程序再次为特定用户启用Apple推送通知.
如果用户接受苹果推送通知服务第一,过了些日子,如果他们不希望收到通知,可以禁用APNS在我们的应用程序?我希望你理解我的怀疑.任何人都可以澄清这个疑问吗?
可以在我们的iPhone应用程序中执行以上场景吗?
请帮我.提前致谢.
iphone permissions push-notification apple-push-notifications ios