APNS – вывод приложения из производства и разработки

У меня есть приложение iOS с помощью push-уведомлений через Parse.com, и я хотел бы провести некоторое тестирование, когда уведомления отправляются только на тестовые устройства. Если я просто перейду на сертификат разработки, я предполагаю, что уведомления не будут отправляться на производственные устройства.

Тем не менее, я немного обеспокоен тем, что я сделал что-то неправильно и случайно пытался отправить сотни тысяч push-уведомлений на производственные устройства через сертификат разработки.

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

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

Большая проблема будет заключаться в том, что вы храните маркеры для песочницы (= разработки) в той же БД, что и маркеры производства. Если вы не проводите различие между двумя типами токенов, когда вы переключаетесь обратно на уведомления о производственных потоках, вы рискуете попытаться отправить уведомления на токены песочницы, используя сертификат производственного нажатия, что даст вам ошибки и закроет ваше соединение с APNS, тем самым нарушая нажатие на токены производства. Поэтому я настоятельно рекомендую вам использовать другую БД для хранения маркеров устройства песочницы.