Невозможно изменить, добавить или удалить пользовательскую информацию полезной нагрузки в расширении службы уведомлений в iOS10.

В короткие сроки продления службы уведомлений

- (void)didReceiveNotificationRequest:(UNNotificationRequest *)request withContentHandler:(void (^)(UNNotificationContent * _Nonnull))contentHandler  

Я могу изменить свойства UNMutableNotificationContent, кроме userInfo. Взятие взаимной копии словаря userInfo, изменение и повторная установка не работает.

2 ответа

Просто сделайте:

Свифт 4:

bestAttemptContent?.userInfo.updateValue("someValue", forKey: "someKey")

Я не нашел документации по этому поводу. Но для меня это не сработало, когда я попытался установить свой собственный тип как значение для определенного kvp в словаре userInfo. Обычные строки отлично работают:

      // works fine with an enum string raw value.
bestAttemptContent.userInfo["myEnumVariable"] = MyEnum.someCase.rawValue

// doesn't work.
// Only shows raw push, ignoring all changes done via notification extension.
bestAttemptContent.userInfo["myEnumVariable"] = MyEnum.someCase
Другие вопросы по тегам