У нас не было проблем с отправкой уведомлений на подготовленные устройства с использованием сертификата разработки и gateway.sandbox.push.apple.com. Но теперь, когда наше приложение находится в магазине, кажется, что мы даже не можем подключиться к производственному серверу apn (gateway.push.apple.com) для отправки запросов, даже когда мы используем машины, которые создали сертификаты в первое место.
Мы выполнили это через PushMeBaby, и похоже, что соединение с gateway.push.apple.com отклоняется. Когда он выполняет рукопожатие (SSLHandshake (context)), результатом является код ошибки -9044 или errSSLConnectionRefused - узел отклонил соединение, прежде чем ответить.
Я достаточно знаю о ssl и шифровании, чтобы знать, что ничего не знаю, но я почти уверен, что проблема в (или начинается с) нашем производственном SSL-сертификате. Push-уведомление включено для производства на портале iPhone (у нас зеленый свет). Сертификат был установлен на машине с PushMeBaby, и я вижу сертификат и ключ подписи в моей цепочке для ключей. Когда я экспортировал push-сертификат разработки и использовал его в PushMeBaby, я смог подключиться (и отправить push-сообщения) без проблем. Но с производственным сертификатом мы никуда не денемся. Мы неоднократно отзывали и воссоздали как сертификат разработчика, так и сертификат продукта на двух разных компьютерах, поэтому, если это человеческая ошибка, мы повторяем это.
Одна вещь, которая может быть фактором, - это то, что у меня есть ключ «агент команды» на моей цепочке для ключей, но я не она. Я могу и отправил двоичные файлы в магазин приложений без каких-либо проблем.
Кроме того, мы не настроили профиль обеспечения после создания производственного сертификата. Я не уверен, является ли это фактором, но я не понимаю, как это может быть для приложения в магазине.
Я, конечно, надеюсь, что у кого-то есть идеи, потому что у меня их нет!