Все сертификаты были созданы, подгружены, на этапе создания/подгрузки ни каких ошибок не выскакивало. Приложение запускается на реальном устройстве в режиме отладки без проблем. Подписываюсь на push вот этим кодом:
ADeviceID - это ид устройства (не пустое), ADeviceToken - после того как кликнули на устрйостве разрешать уведомления, стало не пустым, т.е. тоже заполняется без проблемм.
Сгенерировал по мануалу для xCode сертификат (ck.pem), и пытаюсь через php отправить уведомление:
Вопрос
FeLDMARShaL
Все сертификаты были созданы, подгружены, на этапе создания/подгрузки ни каких ошибок не выскакивало. Приложение запускается на реальном устройстве в режиме отладки без проблем. Подписываюсь на push вот этим кодом:
ADeviceID - это ид устройства (не пустое), ADeviceToken - после того как кликнули на устрйостве разрешать уведомления, стало не пустым, т.е. тоже заполняется без проблемм.
Сгенерировал по мануалу для xCode сертификат (ck.pem), и пытаюсь через php отправить уведомление:
$deviceToken = 'b955e85038ec8c3bddec68ccde3d8a9e03a22f3d9383f43b40b074fdfc29c1ee'; $passphrase = '1234'; $message = 'A push notification has been sent!'; $ctx = stream_context_create(); stream_context_set_option($ctx, 'ssl', 'local_cert', 'ck.pem'); stream_context_set_option($ctx, 'ssl', 'passphrase', $passphrase); if (!$fp) exit("Failed to connect: $err $errstr" . PHP_EOL); echo 'Connected to APNS' . PHP_EOL; $body['aps'] = array( 'alert' => array( 'body' => $message, 'action-loc-key' => 'Bango App', ), 'badge' => 2, 'sound' => 'oven.caf', ); $payload = json_encode($body); $msg = chr(0) . pack('n', 32) . pack('H*', $deviceToken) . pack('n', strlen($payload)) . $payload; $result = fwrite($fp, $msg, strlen($msg)); if (!$result) echo 'Message not delivered' . PHP_EOL; else echo 'Message successfully delivered' . PHP_EOL . $result; fclose($fp);Т.е. на вид эпловцы приняли наш пуш, но до устройства этот пуш не доходит почемуто. В чем собака зарыта не пойму. Нужен совет бывалых так сказать
5 ответов на этот вопрос
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.