Предоставление профилей + Push-уведомления + Производство против разработки - PullRequest
12 голосов
/ 22 сентября 2011

Я создаю приложение для iOS, которое использует push-уведомления, и я наконец готов его отправить. Прежде чем я сделаю это, я хотел бы проверить push-уведомления с рабочего сервера, чтобы убедиться, что все работает правильно. До сих пор среда песочницы работала нормально.

После долгих поисков я узнал, что переключения серверов с ssl://gateway.sandbox.push.apple.com:2195 на ssl://gateway.push.apple.com:2195 недостаточно, и что производственные push-токены отличаются от push-токенов в песочнице. Вместо этого, по-видимому, мне нужен новый профиль обеспечения с разрешениями «Производство», новые сертификаты, установленные на моем сервере, и перестройка моего приложения с указанным профилем, чтобы оно могло создавать правильные push-токены.

Итак, пройдя все шаги, я даже не могу запустить сборку на своем телефоне; XCode говорит

Этот профиль не может быть установлен на устройствах

Вот шаги, которые я предпринял. Если я что-то упустил, пожалуйста, дайте мне знать:

  • В моем Центре разработчиков iOS я удостоверился, что мой AppID «включен для производства» в службе Apple Push Notification Service.

  • Также в моем Центре разработчиков iOS я создал свой SSL-сертификат Production Push, прошел необходимые шаги преобразования и установил полученный .pem на своем сервере.

  • В соответствии с инструкциями, я создал «новый профиль обеспечения, содержащий идентификатор приложения, который вы хотите использовать для уведомлений». Я сделал это, перейдя в Provisioning, щелкнув вкладку «Распространение» и создав новый профиль. Я подтвердил, что «производство» установлено в разделе «Права» этого профиля.

  • Я выбрал профиль обеспечения в настройках своего проекта. Я получаю сообщение

    Этот профиль не может быть установлен на устройствах

    и я застрял.

Ответы [ 2 ]

31 голосов
/ 23 сентября 2011

Создайте специальную дистрибутивную версию своего приложения и установите ее на собственное устройство. Это будет использовать производственный шлюз APN и сертификаты.

14 голосов
/ 23 сентября 2011

Нельзя установить приложение, скомпилированное с профилем распространения (производства) appstore, на устройство.Только обозреватели Apple могут сделать это.Вы можете только протестировать приложение, скомпилированное в режиме разработки и использующее сервер песочницы.Если вы хотите протестировать производственные серверы, вы должны скомпилировать приложение, используя профиль распространения AdHoc, чтобы устройства, на которых вы хотите провести тестирование.Очевидно, что вы должны перекомпилировать и отправить приложение на проверку, используя профиль распространения App Store.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...