Расширение содержимого уведомлений iOS 10 не загружается

#swift #push-notification #apple-push-notifications #ios10 #unnotificationrequest

#swift #push-уведомление #apple — push-уведомления #ios10 #unnotificationrequest

Вопрос:

У меня есть простое приложение для работы с push-уведомлениями. У меня работает расширение службы уведомлений. Я могу отправить удаленное уведомление с URL-адресом изображения и загрузить его.

Кажется, я не могу заставить работать расширение содержимого уведомлений. Я просмотрел несколько руководств, и все они говорят: просто создайте расширение содержимого уведомлений в целевом меню, а затем в расширениях содержимого уведомлений Info.plist установите

 UNNotificationCategory
 

к некоторой строке. Затем, когда вы нажимаете уведомление, внутри json-блока «точки доступа» убедитесь, что категория совпадает с UNNotificationCategory.

Когда я получаю уведомление, я пытаюсь провести его вниз, влево или вправо, и на самом деле ничего не происходит. Тем не менее, расширение службы работает отлично.

Я использую iPhone 5 с ios 10 и XCode 8.0. Я читал, что в какой-то момент только устройства с 3d touch могли просматривать расширение содержимого, но с тех пор это изменилось, поскольку xCode 8 вышел из бета-версии.

Есть идеи? Как я могу приступить к отладке этого? Я попытался запустить приложение с выбранным расширением уведомления и распечатать содержимое внутри

 didReceive
 

но мне не повезло.

Ответ №1:

Убедитесь, что цель развертывания расширения совпадает с целью вашего приложения.

введите описание изображения здесь

Комментарии:

1. Вы сэкономили часы на отладке. Спасибо

2. Вот почему я работал на устройстве iOS 12, вы сделали мой день

3. Потратил много времени, прежде чем выяснить, почему одно расширение работает, а другое нет, только чтобы узнать, что я забыл установить цель развертывания. Спасибо.

4. Я просто ЛЮБЛЮ тебя.

5. Ты сделал мой день, чувак! Так полезно! Спасибо

Ответ №2:

Пожалуйста, проверьте, задан ли идентификатор категории в вашем UNMutableNotificationContent() для, например

 let content = UNMutableNotificationContent()
content.categoryIdentifier = "awesomeNotification"
 

где «awesomeNotification» — это идентификатор вашего UNNotificationCategory

Комментарии:

1. Я делаю это с помощью удаленного уведомления, но я убедился, что поле «category» равно UNNotificationCategory внутри поля «точки доступа»

2. Это должен быть принятый ответ. Работает отлично. Так что да, не забудьте указать поле «категория» внутри узла «точки доступа» в полученном push-уведомлении 🙂

Ответ №3:

Такая проблема. Расширение содержимого iOS отлично работает с iPhone 5s, SE, iPad2mini, но не работает с iPhoine 5, 5c:

Значение UNUserNotificationCenter.current().supportsContentExtensions равно false на iPhoine 5, 5c

Комментарии:

1. Добро пожаловать в stackoverflow! Пожалуйста, обратите внимание, что этот ответ не очень полезен, тем более, что на вопрос уже есть принятый ответ.

Ответ №4:

Несмотря на то, что я читал в других разделах stackoverflow и в Интернете, расширение push-уведомлений не работало на iPhone 5 и IOS 10. Я позаимствовал iPhone 6 , и мой код работал нормально.

Комментарии:

1. Если вы считаете, что видите ошибку или документация отсутствует, обязательно откройте отчет об ошибке в Apple по адресу bugreport.apple.com

2. Я тестировал его на 5s и 6, и расширения работали абсолютно нормально.

3. У меня iPhone 5s, но он не работает. Ребята, помогите мне. есть идеи. UNNotificationExtensionCategory совпадает с APN и «mutable_content»: true

Ответ №5:

Для меня это было связано с изменением сертификатов подписи. Я смог решить это с помощью:

  1. Удаление приложения (и всех приложений в группе приложений)
  2. Перезапуск телефона
  3. Выход из Xcode
  4. Проект очистки
  5. Запуск снова