Расширение службы уведомлений работает при запуске расширения, но не при основной цели приложения [закрыто]IOS

Программируем под IOS
Ответить Пред. темаСлед. тема
Anonymous
 Расширение службы уведомлений работает при запуске расширения, но не при основной цели приложения [закрыто]

Сообщение Anonymous »

Я внедрил расширение службы уведомлений в своем приложении. Когда я создал расширение службы уведомлений, оно создало для меня расширение (NotificationServiceExtension) в схемах. Когда я выбираю это расширение из схем, вызывается DidReceive моего расширения уведомлений и отправляются уведомления. работает отлично, но когда я запускаю основную цель приложения, метод DidReceive класса NotificationService никогда не вызывается.
Я уже сделал это:
  • Полезная нагрузка имеет значение mutable-content, равное 1.
  • Я добавил разные идентификаторы пакетов для основного приложения и службы расширений. Идентификатор пакета расширения имеет префикс основного приложения.
  • Я установил группу приложений для обоих проектов.
  • Проект, основная цель и расширение имеют ту же цель развертывания, что и 13.0.
  • Я включил фоновую выборку, возможность PushNotification в обеих целях.
  • Ключ NSExtension присутствует в info.plist расширения уведомлений.
  • Фазы сборки имеют расширение уведомлений в разделе «Целевые зависимости», в разделе «Встроить расширение Foundation Extension» добавляется файл приложения и флажок «Копировать только при установке» не установлен.
Я перепробовал почти все, но когда я запускаю основную цель приложения, уведомления принимаются, но метод DidReceive и весь код в нем не выполняются, я не вижу [измененного] в push-уведомлении.
Если расширение работает нормально, как я могу создать сборку, потому что, когда я снова создаю сборку своей основной цели, измененное уведомление не работает.
Проверьте NotificationServiceExtension, который нормально работает в схемах
Проверьте настройку схемы основной цели, которую я хочу запустить.
Фрагмент кода, в котором возникла проблема:

Код: Выделить всё

 override func didReceive(_ request: UNNotificationRequest, withContentHandler contentHandler: @escaping (UNNotificationContent) -> Void) {
self.contentHandler = contentHandler
bestAttemptContent = (request.content.mutableCopy() as? UNMutableNotificationContent)

if let bestAttemptContent = bestAttemptContent {
// Modify the notification content here...
bestAttemptContent.title = "\(bestAttemptContent.title) [modified]"

contentHandler(bestAttemptContent)
}
}
вышеуказанный метод вызывается, когда я запускаю целевое расширение, но не когда запускается основное целевое приложение.
Примечание: я создал приложение Flutter и вызов кода принудительной регистрации из AppDelegate в iOS Native.
Любая помощь приветствуется!

Подробнее здесь: https://stackoverflow.com/questions/787 ... e-main-app
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «IOS»