Служба push-уведомлений Azure для Apple iOS 13 не работает - PullRequest
0 голосов
/ 21 октября 2019

Мы можем отправлять push-уведомления на устройства Apple 12.x iOS. Но он не отправляет уведомления на устройства iOS 13. Мы попытались добавить значение «apns-push-type» в «alert» в заголовке уведомления. Но это не работает вообще. Кажется, Microsoft не знает, как это исправить. Они просто так сказали изменение. Мы перепробовали много способов решить эту проблему за последнюю 1 неделю. Но безуспешно.

1 Ответ

0 голосов
/ 23 октября 2019

Apple недавно обновила свою общедоступную службу Push таким образом, чтобы это влияло на клиентов Azure Notification Hubs. Подробнее о влиянии этих изменений на центры уведомлений Azure. В частности, Apple теперь требует, чтобы разработчики идентифицировали уведомления как оповещения или фоновые уведомления через новый заголовок «apns-push-type» в API-интерфейсе APNS.

Обновления Azure Notification Hubs для iOS 13 - насколько я понимаю, вы упомянули: "Мы пробовали много способов решить эту проблему". Если вы еще не пробовали, попробуйте сообщить нам об этом. дальнейшее расследование.

В соответствии с документацией Apple : «Значение этого заголовка должно точно отражать содержимое полезной нагрузки вашего уведомления. Если имеется несоответствие или отсутствует заголовок в требуемых системах, APNsможет вернуть ошибку, задержать доставку уведомления или полностью ее удалить. "

Разработчики теперь должны установить этот заголовок в своих приложениях, которые отправляют уведомления через центры уведомлений Azure. Из-за технических ограничений клиенты должны использовать аутентификацию на основе токенов для учетных данных APNS с запросами, включающими этот атрибут. Если вы используете аутентификацию на основе сертификатов для своих учетных данных APNS, вы должны переключиться на использование аутентификации на основе токенов.

Чтобы помочь вам во время этого перехода, когда концентраторы уведомлений Azure обнаруживают уведомление, которое не имеетapns-push-type set, сервис будет выводить тип push из запроса на уведомление и автоматически устанавливать значение. Помните, что необходимо настроить концентраторы уведомлений Azure для использования аутентификации на основе токенов, чтобы установить требуемый заголовок;пожалуйста, обратитесь к Аутентификация на основе токенов (HTTP / 2) для APNS для получения дополнительной информации.

Еще одним незначительным изменением, но требующим изменения в бэкэнд-приложении, которое отправляет уведомления, является требование, чтобы для фоновых уведомлений заголовок apns-priority должен быть установлен на 5. Многие приложения устанавливают заголовок apns-priority10 (указывает на немедленную доставку), либо не устанавливайте его и получите значение по умолчанию, которое также равно 10. Это больше не разрешено для фоновых уведомлений, поэтому вы должны установить значение для каждого запроса, так как Apple не будет доставлять фоновые уведомления, еслиэто значение отсутствует.

В течение многих лет разработчики iOS использовали атрибут описания данных deviceToken, отправляемых делегату push-токена, для извлечения push-токена, используемого бэкэнд-приложением для отправки уведомлений на устройство. В Xcode 11 этот атрибут описания изменился на другой формат. Существующие разработчики кода, используемые для этого, теперь не работают. Мы обновили SDK Azure Notification Hubs, чтобы учесть это изменение. Обновите SDK, используемый вашими приложениями, до версии 2.0.4 или более новой версии Azure Notification Hubs iOS SDK .

Источник - Обновления Azure Обновления концентраторов уведомлений Azure для iOS 13 (Опубликовано 21 октября 2019 года). Скопировал содержание здесь для большей наглядности.

...