Swift 本地通知:没有更多上下文的表达式类型是模棱两可的

Posted

技术标签:

【中文标题】Swift 本地通知:没有更多上下文的表达式类型是模棱两可的【英文标题】:Swift Local Notifications: Type Of Expression is Ambiguous Without More Context 【发布时间】:2017-04-28 03:02:36 【问题描述】:

我正在尝试实现本地通知,但收到错误“表达式类型不明确,没有更多上下文”。

我查看了其他相关主题,其中许多主题要么使用早期版本的 Xcode(我使用的是 8.o、ios 10),要么提供了我遇到问题的同一段代码.如果我错过了带有答案的帖子,我深表歉意。我从tutorial site 复制并粘贴了这段代码,这似乎与许多其他网站上使用的代码相同(并作为其他问题的答案提供)。

此代码旨在向用户请求本地通知的权限

func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool 

application.registerUserNotificationSettings(UNNotificationSettings(forTypes: [.Alert , .Badge , .Sound], categories: nil)) // This line sends back the error

    return true

谢谢!

【问题讨论】:

只是“UN”而不是“UNNotificationSettings”?它最初是 UIUserNotificationSettings(或类似的东西),我提示将其更改为 UNNotificationSettings,这似乎工作正常 【参考方案1】:

根据 Swift 3 和 iOS 10,执行以下操作:

func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool 

    UNUserNotificationCenter.current().requestAuthorization(options: [.alert, .badge, .sound], completionHandler: nil)

    return true


【讨论】:

以上是关于Swift 本地通知:没有更多上下文的表达式类型是模棱两可的的主要内容,如果未能解决你的问题,请参考以下文章

swift 2.0 healthkit requestAuthorizationToShareTypes - 表达式类型不明确,没有更多上下文

代码返回“表达式类型不明确,没有更多上下文”Swift

Swift:使用 URLSession 的“表达式类型不明确,没有更多上下文”

Swift 错误:表达式类型不明确,没有更多上下文

表达式类型不明确,没有更多上下文 Healthkit ios Swift

表达式类型不明确,没有更多上下文 Healthkit ios Swift