【发布时间】:2020-06-17 08:51:36
【问题描述】:
我需要使用 userinfo 数据中包含的 NotificationCenter POST 请求传递 OSNotificationPayload 类型的有效负载,但我不断收到以下错误 Cannot convert value of type 'OSNotificationPayload' to expected argument type '[AnyHashable : Any]?'
我是一个快速的菜鸟,可以强制这样做吗?受影响的代码如下
let notificationOpenedBlock: OSHandleNotificationActionBlock = { result in
let payload: OSNotificationPayload = result!.notification.payload
NotificationCenter.default.post(name: Notification.Name("Notification"), object: nil, userInfo: payload )
}
我在另一个班级有一个观察者设置
public override func load() {
let nc = NotificationCenter.default
nc.addObserver(self, selector: #selector(self.handleSignal(_:)), name: Notification.Name("Notification"), object: nil)
}
@objc func handleSignal(_ notification: NSNotification)
{
let image = notification.userInfo?["notify"] as? OSNotificationPayload
notifyListeners(
"myPluginEvent",
data: ["payload":image as Any],
retainUntilConsumed: true
)
}
【问题讨论】:
标签: ios swift swift3 swift4 onesignal