Push-уведомления Apple - распространение и разработка одновременно

Можно ли заставить службу push-уведомлений Apple работать как в сборках для разработки, так и в сборках для распространения?

Я хочу отлаживать свое приложение, пока оно установлено на других устройствах с профилем обеспечения распространения.


person bobsacameno    schedule 08.08.2014    source источник


Ответы (1)


Да, вы можете создавать push-сертификаты как для среды распространения, так и для среды разработки (песочницы). И отдельное приложение, установленное на устройстве, выберет, с какой средой push-уведомлений работать, на основе прав <aps-environment> в профиле обеспечения (который определит, назначен ли ему токен рабочего или разрабатываемого устройства при регистрации в APNS).

Тем не менее, я настоятельно рекомендую вам не использовать один и тот же сервер и базу данных для хранения токенов устройств производства и разработки. Токены разработки действительны только в среде разработки. Если вы попытаетесь отправить уведомления токенам разработки при использовании производственного push-сертификата и подключении к производственному серверу APNS, вы получите сообщение об ошибке (недопустимый токен) и соединение будет закрыто, что может также прервать отправку уведомлений на рабочие токены. .

Если у вас есть сервер разработки, ваша сборка разработки должна отправлять токен устройства на этот сервер, и только сервер разработки должен подключаться к среде песочницы APNS.

person Eran    schedule 08.08.2014
comment
Я действительно столкнулся с этой проблемой с недопустимым токеном, у вас есть 2 разные базы данных? Кроме того, вы всегда открываете и закрываете соединение для отправки или просто делаете все сразу в одном и том же соединении? - person meda; 08.08.2014
comment
Итак, вы говорите, что мне нужно 2 сервера, один с ключом распространения, а другой с ключом разработки. Что произойдет, если я зарегистрирую свое приложение на обоих серверах? Или мне нужно зарегистрировать приложение с профилем обеспечения разработки на сервере разработки и приложение с профилем обеспечения распространения на сервере распространения? - person bobsacameno; 09.08.2014
comment
@ roi.holtzman Это идея. Сборка разработчика зарегистрируется на сервере разработки, а сборка продукта зарегистрируется на сервере разработки. Альтернативой, если у вас есть только один сервер и БД, является хранение с каждым токеном устройства указанием, является ли он токеном производства или разработки, и на основе этого знать, какой сертификат и push-сервер использовать при отправке ему уведомления. - person Eran; 09.08.2014