我正在尝试通过 google_sign_in package 检索谷歌服务器身份验证代码并解决了多个 git hub 问题,终于找到了这个 pull request ,这应该可以解决这一努力的问题。
在此拉取请求中,对于 iOS,建议将以下行添加到 GoogleService-Info.plist
:
<key>SERVER_CLIENT_ID</key>
<string>YOUR_SERVER_CLIENT_ID</string>
我尝试使用通过 Google Cloud Platform/API 和服务/凭据为 Firebase 项目创建的 iOS Flutter 应用程序的客户端 ID,但 getServerAuthCode
仍然返回 null。
在哪里可以找到正确的服务器客户端 ID?
/edit:我还尝试从 Google 控制台为 Web 应用程序创建客户端 ID,如此处所述 What are APP_CLIENT_ID and SERVER_CLIENT_ID and where do I find them?但 getServerAuthCode
仍然返回 null。
最佳答案
google_sign_in 包实现错误。我使用了提供的修复here并能够检索服务器身份验证 token 。
You can just add google_sign_in your project like (in your pubspec.yaml file)
google_sign_in:
git:
url: https://github.com/aseef17/plugins.git
path: packages/google_sign_in/google_sign_in
ref: master
And add a dependacy override for google_sign_in_platform_interface
dependency_overrides:
google_sign_in_platform_interface:
git:
url: https://github.com/aseef17/plugins.git
path: packages/google_sign_in/google_sign_in_platform_interface
To get this to work in for iOS, you have to add a new key in your GoogleService-Info.plist file
<key>SERVER_CLIENT_ID</key> <string>YOUR_CLIENT_ID_HERE</string>
可以通过 Google Cloud Platform/API 和服务/凭据在 Firebase 项目中创建服务器客户端 ID。 (使用适用于 iOS 的 Web 应用程序!,如所述 here )
关于firebase - google_sign_in 包中的 getServerAuthToken 返回 null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66364982/