在我的AppDelegate中使用谷歌的AppDelegate
func application(application: UIApplication,
openURL url: NSURL, sourceApplication: String?, annotation: AnyObject?) -> Bool {
return GIDSignIn.sharedInstance().handleURL(url,
sourceApplication: sourceApplication,
annotation: annotation)
}但是,该函数在iOS 9中不再被推荐使用。
application:openURL:options: 如何返回
GIDSignIn.sharedInstance().handleURL(url,sourceApplication: sourceApplication,注释:注释)
对iOS 9使用新函数吗?
发布于 2015-12-27 15:46:51
用这个:
//Google Login
@available(iOS 9.0, *)
func application(application: UIApplication,
openURL url: NSURL, options: [String: AnyObject]) -> Bool {
return GIDSignIn.sharedInstance().handleURL(url, sourceApplication: options[UIApplicationOpenURLOptionsSourceApplicationKey] as! String, annotation: options[UIApplicationOpenURLOptionsAnnotationKey])
}
//for IOS 8
@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)
}发布于 2016-05-03 14:52:17
仅供参考,如果使用目标-C,则方法实现如下:
- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation {
return [[GIDSignIn sharedInstance] handleURL:url
sourceApplication:sourceApplication
annotation:annotation];
}如果在iOS 9上,建议也实现新格式:
- (BOOL)application:(UIApplication *)application openURL:(nonnull NSURL *)url options:(nonnull NSDictionary<NSString *,id> *)options {
return [[GIDSignIn sharedInstance] handleURL:url
sourceApplication:options[UIApplicationOpenURLOptionsSourceApplicationKey]
annotation:options[UIApplicationOpenURLOptionsAnnotationKey]];
}https://stackoverflow.com/questions/33385770
复制相似问题