本文介绍了推进分配的通知的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我创建的所有证书,以推动下发展的通知我的应用程序的iPhone。
如果我与开发者证书创建的文件。质子交换膜测试它的工作,但如果我使用由生产证书创建的文件。质子交换膜它不能正常工作。

I create all certificates to develope push notify for my app iPhone. If I test it with file .pem created by developer certificates it work, but if I use file .pem created by production certificates it not work.

这是我的code:

public function push($deviceToken,$badge,$message,$deviceType) {

              $sound = "default";

              // Construct the notification payload
              $body = array();
              $body['aps'] = array("alert" => $message);

              if ($badge)
                    $body['aps']['badge'] = $badge;
              if ($sound)
                    $body['aps']['sound'] = $sound;

              $ctx = stream_context_create();
              stream_context_set_option($ctx, 'ssl', 'local_cert', 'apns-prod.pem');
              $fp = stream_socket_client("ssl://gateway.push.apple.com:2195", $err, $errstr, 60, STREAM_CLIENT_CONNECT, $ctx);

              if (!$fp) {
                    print "Failed to connect $err $errstrn";
                    return;
              } else {
                    print "Connection OK\n";
              }

              $payload = json_encode($body);
              $msg = chr(0) . pack('n',32) . pack('H*', str_replace(' ', '', $deviceToken)) . pack('n',strlen($payload)) . $payload;
              fwrite($fp, $msg);
              fclose($fp);

    }

任何建议?

推荐答案

一定要后推过程中创造的证书,创建一个新的即席和AppStore的或经销证书。自组织和AppStore的证书更改推使应用程序。

Be sure to create a NEW adhoc and or appstore distribution certificate AFTER creating the certificates for the push process. The adhoc and appstore certificates change for push-enables apps.

这篇关于推进分配的通知的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

09-27 16:17