我有一个支持本地和推送通知的应用。这些通知包括网址。用户打开通知后,应加载网址。这很有效。
然而,手表上也可以收到相同的通知。当用户选择通知并将其发送到手机时,也应该打开网址。
我实现了以下方法:
public func application(_ application: UIApplication, continue userActivity: NSUserActivity, restorationHandler: @escaping ([Any]?) -> Void) -> Bool
在切换时调用。遗憾的是,创建的userActivity
不包含通知有效负载。相反,userInfo
仅包含notificationIdentifier。它看起来像这样:
▿ Optional<Dictionary<AnyHashable, Any>>
▿ some : 1 element
▿ 0 : 2 elements
▿ key : AnyHashable("NotificationIdentifier")
- value : "NotificationIdentifier"
- value : 0F99DF81-C721-4A56-850A-13CF74A85547
如何检索通知有效内容?