繁体   English   中英

通过PHP推送到多个iOS设备

[英]Push to multiple iOS Devices via PHP

首先要说一件好事-我的代码正在工作。 但是不幸的是,许多设备要推入它的速度非常慢。 当一个设备之前使用我的代码失败(连接是在循环外部进行)时,整个推送过程都失败了,因此我将连接带到了循环内部:

foreach ($deviceTokens as $token) {
  $fp = stream_socket_client($this->data['config']['push']['apnsAddress'], $err, $errstr, 60, STREAM_CLIENT_CONNECT | STREAM_CLIENT_PERSISTENT, $ctx);
  $msg = chr(0).pack('n', 32).pack('H*', $token).pack('n', strlen($payload)).$payload;
  $result = fwrite($fp, $msg);
  if (!$result) {
    $this->pushLog('devicetoken '.$token.' failed');
    $errors++;
  }
  fclose($fp);
}

除了为安装了应用程序的每个人建立新连接之外,没有其他方法可以推送到多个设备吗? 此脚本的运行时很长。

首先,我是否可以知道要尝试引入多少个设备? 对于合理数量的令牌,您拥有的代码应该可以正常工作。 服务器到苹果的连接速度有多快? 一种替代方法是使用第三方推送API。 通常,它们提供扩展的参数和选项,这些参数和选项肯定包括通过一次调用即可推送到多个设备。 干杯。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM