如何将推送通知发送到多个设备?

Yog*_*ogi 23 iphone push-notification apple-push-notifications

这是我第一次在我的App中使用推送通知.我已经通过示例应用程序和书籍,我得到了如何将推送通知发送到单个设备.但我没有得到我应该在我的程序中做什么更改向多个设备发送推送通知.我正在使用"PushMeBaby"应用程序进行服务器端编码.拜托,帮帮我吧.提前致谢.

Pri*_*ank 30

尝试此示例代码并根据您的环境进行修改.

    $apnsHost = '<APNS host>';
    $apnsPort = <port num>;
    $apnsCert = '<cert>';

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

    $apns = stream_socket_client('ssl://' . $apnsHost . ':' . $apnsPort, $error, $errorString, 60, STREAM_CLIENT_CONNECT, $streamContext);

    $payload['aps'] = array('alert' => 'some notification', 'badge' => 0, 'sound' => 'none');
    $payload = json_encode($payload);

// Note: $device_tokens_array has list of 5 devices' tokens

    for($i=0; $i<5; $i++)
    {
            $apnsMessage = chr(0) . chr(0) . chr(32) . pack('H*', str_replace(' ', '', $device_tokens_array[i])) . chr(0) . chr(strlen($payload)) . $payload;

            fwrite($apns, $apnsMessage);
    }?>
Run Code Online (Sandbox Code Playgroud)

本文有助于验证丢弃连接和连接状态:Apple推送通知:发送大量消息

其他参考链接:

如何在iPhone中一次性向多个设备发送推送通知? 以及 如何在使用推送通知时处理多个设备?