我正在尝试处理启动选项,并在接收到远程通知后点击打开特定的视图控制器(Swift 3)。我看到了类似的问题,例如这里,但没有针对新的Swift 3实现的解决方案。我在AppDelegate.swift中看到了一个类似的问题,在didFinishLaunchingWithOptions中添加了以下内容:
var localNotif = (launchOptions[UIApplicationLaunchOptionsRemoteNotificationKey] as! String)
if localNotif {
var itemName = (localNotif.userInfo!["aps"] as! String)
print("Custom: \(itemName)")
}
else {
print("//////////////////////////")
}
但是 Xcode 给了我这个错误:
Type '[NSObject: AnyObject]?' has no subscript members
我也尝试了这个:
if let launchOptions = launchOptions {
var notificationPayload: NSDictionary = launchOptions[UIApplicationLaunchOptionsRemoteNotificationKey] as NSDictionary!
}
然后我收到了这个错误:
error: ambiguous reference to member 'subscript'
我之前在类似的代码中使用字典键获取值时,遇到了类似的错误,不得不替换代码并安全地解包字典。但在这里似乎行不通。希望能得到帮助。谢谢。