У меня также была эта проблема с приложением Cordova, и после небольшого прочтения кажется, что это распространенная проблема в наше время.
ПОЧЕМУ ЭТО СЛУЧИЛОСЬ?
Поскольку вы упоминаете, что ваше приложение уже было утверждено с использованием push-уведомлений, наиболее вероятным сценарием является изменение профиля обеспечения для вашего приложения при отправке его в AppStore. Возможно, вы:
- перестроил ваш проект в XCode или
- перешел на другой компьютер и забыл сообщить XCode, какой был правильный профиль, или
- кто-то сел за ваш компьютер и изменил его, или
Эта проблема возникает из-за того, что разрешения выбираются через профиль обеспечения. Если вы забудете связать профиль обеспечения для вашего приложения с AppID, который имеет право «Push-уведомления» (обратите внимание, что XCode делает это автоматически с помощью сертификата обеспечения по умолчанию подстановочным символом разработчика), то вы, скорее всего, получите это сообщение, пока вы не выполните из разрешения.
КАК УДАЛИТЬ НЕОБХОДИМОСТЬ ПУШЕВЫХ УВЕДОМЛЕНИЙ В CORDOVA APPS:
Я отправлял приложение Cordova, когда получил это сообщение, и хотя решение, опубликованное @jlapoutre, достаточно для одобрения вашего приложения, вы хотите продолжать получать выгоду от обновлений Cordova, поэтому лучше всего воспользоваться условной компиляцией (т. е. запуск директивы #ifndef DISABLE_PUSH_NOTIFICATIONS
, которая указывает XCode компилировать ваше приложение с оставленным битом кода).
Условная компиляция также известна как «Макросы препроцессора» в XCode-говорят. Вот как вы можете сделать это графически с помощью пользовательского интерфейса (обратите внимание, что это делается в XCode 6.1):
Надеюсь, это поможет другим людям в такой же ситуации.