作者热门文章
- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
对于 options[UIApplicationOpenURLOptionsSourceApplicationKey]
,“无法使用 String 类型的索引为类型 [String, AnyObject]
的值下标”。 Swift 2、iOS 9.x、Google Sign in 使用 CocoaPods 安装。有什么提示吗?
func application(app: UIApplication, openURL url: NSURL, options: [String : AnyObject]) -> Bool {
return GIDSignIn.sharedInstance().handleURL(url, sourceApplication: options[UIApplicationOpenURLOptionsSourceApplicationKey], annotation: options[UIApplicationOpenURLOptionsAnnotationKey])
}
最佳答案
功能 iOS 9.0 之前
func application(application: UIApplication, openURL url: NSURL, sourceApplication: String?, annotation: AnyObject) -> Bool {
return GIDSignIn.sharedInstance().handleURL(url, sourceApplication: sourceApplication, annotation: annotation)
}
或者使用您正在使用的方法,您可以像(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: [:])
}
或者同时支持 iOS 9 及更高版本
和 iOS 8.0 到 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)
}
关于ios - 适用于 iOS 的 Google 登录 : error "Cannot subscript a value of type ' [String : AnyObject ]' with an index of type ' String'",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35594702/
我是一名优秀的程序员,十分优秀!