我已关注:Integrating Google Sign-In into your iOS app
然而,当我执行应用程序时,它会在应用程序委托中停止 - 甚至在我看到第一个视图控制器之前。
原因是因为我在"application didFinishLaunchingWithOptions withOptions
“中编写的这几行代码是:
"NSError* configureError;
[[GGLContext sharedInstance] configureWithError: &configureError];
NSAssert(!configureError, @"Error configuring Google services: %@", configureError);
[GIDSignIn sharedInstance].delegate = self;"
在调试中,当它到达此代码时,它会显示
“因未捕获的异常而终止应用 'NSInternalInconsistencyException',原因:'配置Google时出错 服务:错误域= com.google.greenhouse代码= -200“无法 配置GGL。“UserInfo = 0x7ff9c2e1d000 {NSLocalizedRecoverySuggestion =检查格式和位置 GoogleService-Info.plist。,NSLocalizedDescription =无法配置 GGL。,NSLocalizedFailureReason =无法解析所提供的 GoogleService-Info.plist中。有关详细信息,请参阅日志。}'“。
我将GoogleService-Info.plist
放在我的目录中,但它仍然无效。
答案 0 :(得分:40)
GoogleService-Info.plist
文件拖放到项目中Shared Resources
等位置。成功添加文件后,还应确保将其包含在项目构建中:
仔细检查项目的“构建阶段”部分,您的项目是否包含GoogleService-Info.plist
。
仔细检查文件名。文件名必须完全GoogleService-Info.plist
常见拼写错误包括 GoogleServices-Info.plist 和 GoogleService-info.plist - 区分大小写确切命名只会起作用。
答案 1 :(得分:9)
我遇到了同样的问题。实际上,我在cocoapods文件中解决了这个问题,我将“pod'Google / SignIn'”改为“pod Google”。希望它也可以帮助你。
答案 2 :(得分:1)
如果您只想获得 GCM_SENDER_ID ,请尝试以下解决方法:
NSError* configureError;
[[GGLContext sharedInstance] configureWithError:&configureError];
NSString * gcmSenderID = [GGLContext sharedInstance].gcmSenderID;
NSLog(@"%@", gcmSenderID);
答案 3 :(得分:0)
当我更新google pod时,这种情况发生在我身上。他们改变了配置URL方案的方式。最好的方法是重新配置谷歌登录。