没有活动配置。确保在 Info.plist 中设置了 GIDClientID

问题描述 投票:0回答:6

我对应用程序开发非常陌生。我正在尝试配置我的 GoogleSignInButton 回调函数。

我收到错误:

无活动配置。 确保在 Info.plist 中设置了 GIDClientID。

但是,我的 Info.plist 定义了 GIDClientID 以及按照建议生成的值 here

enter image description here

操作系统:版本13.0 Beta

Xcode:版本 14.1 beta 3

xcode google-signin
6个回答
21
投票

为了解决此问题,您不需要在 info.plist 中添加任何内容。您需要设置

GIDSignIn.sharedInstance.configuration = config

https://github.com/WesCSK/SwiftUI-Firebase-Authenticate-Using-Google-Sign-In/blob/starting/README.md#updated-steps-for-v700-of-google-signin

guard let clientID = FirebaseApp.app()?.options.clientID else { return }
        
// Create Google Sign In configuration object.
let config = GIDConfiguration(clientID: clientID)
        
GIDSignIn.sharedInstance.configuration = config

....

3
投票

Firebase 登录方法中的 Google 文档比......更糟糕 因此,如果您使用的是 8.6.0,则可以使用 GIDSignIn.sharedInstance.signIn(withPresenting:presentingVC),但在 Info.plist 中添加 ClientID,如下所示: 在此输入图片描述

关于主要问题,从您的图片中我看到您将 URLSchema 放在 GIDClientID 处,它们有点不同。 例如。 GIDclientID:xxxx-xxxxxx.apps.googleusercontent.com URLSchema:com.googleusercontent.apps.xxxx-xxxxxx。

尝试这样。

我在代码中使用这行调试获取了我的 clientId Guard let clientID = FirebaseApp.app()?.options.clientID


2
投票

不要将名为“GIDClientID”的新属性添加到目标项目的Info.plist中,而是使用GoogleService-Info.plist中定义的CLIENT_ID。

在此处查找更多详细信息: https://stackoverflow.com/a/74897652/19683708


0
投票

同样的错误。我也是新手,它帮助我重新安装旧版本(6.0.0 和 8.6.0)的软件包(GoogleSignIn 和 FirebaseAuth),因此

GIDSignIn.sharedInstance.signIn(with: config, presenting: self)
可用。这是一个临时解决方案,直到我们找到工作方法为止。


0
投票

使用React Native 75和“@react-native-google-signin/google-signin”13.0+ 对我来说,问题是我需要记住在调用signIn之前始终调用.configure

GoogleSignin.configure({
        webClientId:
          "My web client id - found here for rnfirebase https://rnfirebase.io/auth/social-auth#google",
      });
await GoogleSignin.hasPlayServices();
const { data } = await GoogleSignin.signIn();
... rest of your code

-1
投票

谷歌标志的这一变化是新的。另外

GIDSignIn.sharedInstance.signIn(with: config, presenting: self)
不再可用。
GIDSignIn.sharedInstance.signIn(withPresenting: presentingVC)
取代了它。但我得到了同样的错误。希望有人能找到答案

© www.soinside.com 2019 - 2024. All rights reserved.