Push-уведомления iOS не отправляются на устройство - PullRequest
0 голосов
/ 23 мая 2019

При настройке Fastlane Match я сломал push-уведомления (производственные и промежуточные) в своем iOS-приложении (вероятно, команда nuke сделала это). Производство правильно регистрирует ошибки. Я сгенерировал новые сертификаты с помощью команды Fastlane pem как для производства «com.app.prod», так и для постановки «com.app.qa». Он генерирует новые «производственные» сертификаты Apple Push Services на сайте Apple dev и создает необходимые файлы pem.

enter image description here

Я преобразовал файл prod pem в правильный файл p12 с помощью команды openssl pkcs12 -export -in "production_com.app.prod.pem" -out "com.app.prod.p12" и openssl pkcs12 -export -in "production_com.app.qa.pem" -out "com.app.qa.p12" для подготовки. Загрузил оба в сервис AWS SNS (без песочницы) без проблем.

enter image description here

Это исправило производственный сервер. Он работал с нашим старым приложением (до изменения сертификата) и новой версией.

Но наше постановочное приложение Testflight все еще не работало. Он не работал со старой или новой версией приложения iOS. Никаких ошибок не происходит. Приложение правильно регистрируется в службе Apple Push Notification (APN) и отправляет токен на наш сервер. Отправка сообщения вручную с конечной точки AWS также не работает, но в нем говорится, что оно было успешно отправлено.

enter image description here

Пробовал восстанавливать сертификаты (убедился, что я загружаю правильные). Я использую одно и то же устройство iOS для всех моих испытаний. Наши Android-уведомления по-прежнему работают нормально при постановке.

Попытка http://pushtry.com, говорит, что она прошла успешно, но не получила никакого сообщения Также попробовал команду openssl s_client -connect gateway.push.apple.com:2195 -cert "production_com.app.qa.pem" -key "production_com.app.qa.pem", без ошибок.

Я заблудился в том, где может быть проблема или как я могу отладить это дальше. Так что любые предложения будут полезны.

...