适用于iOS的Google登录:错误"无法使用"String"类型的索引下标类型'[String:AnyObject]'的值

Duk*_*Ace 5 ios swift swift2

'无法下标[String, AnyObject]带有String 类型索引的类型值options[UIApplicationOpenURLOptionsSourceApplicationKey].Swift 2,iOS 9.x,Google登录使用CocoaPods安装.任何提示?

func application(app: UIApplication, openURL url: NSURL, options:     [String : AnyObject]) -> Bool {
    return GIDSignIn.sharedInstance().handleURL(url,    sourceApplication: options[UIApplicationOpenURLOptionsSourceApplicationKey], annotation: options[UIApplicationOpenURLOptionsAnnotationKey])
}
Run Code Online (Sandbox Code Playgroud)

EI *_*2.0 11

功能 before iOS 9.0

func application(application: UIApplication, openURL url: NSURL, sourceApplication: String?, annotation: AnyObject) -> Bool {
    return GIDSignIn.sharedInstance().handleURL(url, sourceApplication: sourceApplication, annotation: annotation)
}
Run Code Online (Sandbox Code Playgroud)

或者使用你正在使用的方法,你可以使用它像(Prior to iOS 9.0 and above)

func application(_ application: UIApplication, open url: URL, options: [UIApplicationOpenURLOptionsKey : Any])
 -> Bool {
return GIDSignIn.sharedInstance().handleURL(url,
                        sourceApplication:options[UIApplicationOpenURLOptionsKey.sourceApplication] as? String,
                        annotation: [:])
}
Run Code Online (Sandbox Code Playgroud)

或支持in iOS 9 and above和iniOS 8.0 to iOS 9.0

@available(iOS 9.0, *)
func application(_ application: UIApplication, open url: URL, options: [UIApplicationOpenURLOptionsKey : Any])
 -> Bool {
return GIDSignIn.sharedInstance().handleURL(url,
                        sourceApplication:options[UIApplicationOpenURLOptionsKey.sourceApplication] as? String,
                        annotation: [:])
}

//for iOS 8, check availability   
@available(iOS, introduced=8.0, deprecated=9.0)
func application(application: UIApplication,openURL url: NSURL, sourceApplication: String?, annotation: AnyObject) -> Bool {
    return GIDSignIn.sharedInstance().handleURL(url, sourceApplication: sourceApplication!, annotation: annotation)
}
Run Code Online (Sandbox Code Playgroud)