我正在尝试使用 2 个操作系统常量,如 google Sign in sdk 中使用的那样。这是我的代码:
func application(application: UIApplication, openURL url: NSURL, options: [String: AnyObject]) -> Bool {
let appKey = UIApplicationOpenURLOptionsSourceApplicationKey
let annoKey = UIApplicationOpenURLOptionsAnnotationKey
return GIDSignIn.sharedInstance().handleURL(url,sourceApplication: options[appKey],
annotation: options[annoKey])
}
但是当我使用 UIApplicationOpenURLOptionsSourceApplicationKey
和 UIApplicationOpenURLOptionsAnnotationKey
时,我收到一条错误消息
Use of unresolved identifier
UIApplicationOpenURLOptionsSourceApplicationKey
任何帮助将不胜感激。
最佳答案
如您所见 options
是一本字典,可以容纳String
作为 key ,并且 AnyObject
作为值。
let appKey = UIApplicationOpenURLOptionsSourceApplicationKey
:在这一行中您的 appKey
有一个类型 AnyObject
,所以无法发送至GIDSignIn.sharedInstance()
。尝试将其转换为字符串:
let appKey = UIApplicationOpenURLOptionsSourceApplicationKey as? String
或
let appKey = UIApplicationOpenURLOptionsSourceApplicationKey as! String
关于ios - 分配操作系统常量的 Swift 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35909332/