Сообщение iOS10/Xcode 8.0 "Отсутствие права на уведомление о передаче уведомлений" после сборки iTunes Store

В то время как создание iTunes хранит и отправляет архив, я получаю эту ошибку от apple:

Уважаемый разработчик,

Мы обнаружили одну или несколько проблем с вашей недавней доставкой для "XXXXXXXXX". Ваша доставка прошла успешно, но вы можете исправить следующие вопросы в следующей поставке:

Отсутствие права на уведомление о Push Push - ваше приложение включает в себя API для Apple Push Notification, но права доступа aps-environment отсутствует в подписи приложения. Чтобы решить эту проблему, Идентификатор приложения включен для push-уведомления в Provisioning Portal. Затем подпишите свое приложение с профилем предоставления распределения, который включает права aps-environment. Это создаст правильный подпись, и вы можете повторно отправить свое приложение. См. "Предоставление и Разработка" в руководстве по программированию локального и push-уведомления больше информации. Если ваше приложение не использует Apple Push Notification службы, никаких действий не требуется. Вы можете удалить API из будущего чтобы остановить это предупреждение. Если вы используете стороннюю структуру, вам может потребоваться связаться с разработчиком для получения информации об удалении API.

После устранения проблем вы можете использовать Xcode или Application Loader для загрузки нового двоичного файла в iTunes Connect.

Привет,

Команда App Store

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

Открыв встроенный .xcodeproj на вкладке "Возможности", настройки push-уведомления, кажется, отключены.

Ответ 1

Попробуйте создать файл Entitlements.plist в корневом каталоге вашего проекта.

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/
DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
  <dict>
    <key>aps-environment</key>
    <string>production</string> <!-- Either development or production -->
  </dict>
</plist>

SO, до Xcode 8, Xcode будет читать ваш профиль подготовки и если профиль имеет установленное в нем ограничение push, автоматически добавит право на сборку для вас. Поскольку Xcode 8, это уже не так, и вы должны конкретно указать права, которые вы используете.

Ответ 2

Этот ответ, приведенный ниже, немного проще, чем предлагаемые здесь решения. Вы можете просто исправить использование интерфейса xCode без необходимости вручную создавать новые файлы. Просто переверните переключатель для push-уведомлений в разделе Capabilities.

fooobar.com/questions/93330/...