Документация для UNNotificationContent
userInfo
свойств отмечает, что ключи должны быть типов списка свойств . Это означает, что они должны быть одним из коротких списков типов, которые непосредственно хранятся в списке свойств. Подобные скалярам типы в этом списке включают NSNumber
, NSString
и NSDate
.
Литерал Swift Int
0
, который вы используете в качестве ключа , должен , насколько я знаю, автоматически соединяться с NSNumber
и, следовательно, быть допустимым в качестве ключа. Кажется, этого не происходит.
Вам придется напрямую использовать один из этих типов списков. Если вам нужен номер в качестве ключа, 0 as NSNumber
должен работать (надеюсь?) Или NSNumber(value: 0)
. Я думаю, что чаще всего ключом является строка.
Я думаю, что это стоит подачи радара о , тем более что Swift String
, по-видимому, соединен правильно и автоматически (до NSString
). (Исключение со стороны ObjC, чтобы сообщить нам, что словарь не может быть закодирован, а не тихое исчезновение, также было бы хорошо ...)