You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

iOS集成Google登录遇Error Domain=com.google.GIDSignIn Code=-4问题排查求助

排查GoogleSignIn Error Code=-4的步骤
  • 确认Google Cloud控制台配置

    • 登录Google Cloud控制台,找到对应项目的「API和服务」→「凭据」页面,检查iOS类型的OAuth 2.0客户端ID,确保其「Bundle ID」字段与当前应用的Bundle ID完全匹配。
    • 下载最新的GoogleService-Info.plist文件替换项目旧文件,确保文件内的CLIENT_ID、REVERSED_CLIENT_ID、KEYCHAIN_SHARED_GROUP等字段与控制台配置一致。
  • 检查钥匙串权限配置

    • 打开Xcode项目的「Signing & Capabilities」标签,确保开启「Keychain Sharing」功能,且添加的共享组包含GoogleService-Info.plist中KEYCHAIN_SHARED_GROUP对应的组(通常格式为com.googleusercontent.apps.xxxxxx)。
    • 若未开启Keychain Sharing,需在Info.plist中添加keychain-access-groups数组,包含当前应用的Bundle ID和Google对应的钥匙串组。
  • 验证首次登录流程

    • 先跳过restorePreviousSignIn调用,执行手动登录流程(调用signIn(withPresenting:)方法)完成用户授权。
    • 登录成功后退出并重启应用,再调用restorePreviousSignIn观察是否仍报错。
  • 清理旧数据

    • 卸载设备上的测试应用,清除钥匙串中残留的旧验证令牌(可通过Xcode「Devices and Simulators」面板执行设备的「Erase All Content and Settings」,或在iOS设置中重置钥匙串)。
    • 重新编译安装应用,先完成手动登录,再测试自动恢复登录功能。
  • 检查代码硬编码内容

    • 全局搜索项目,确认无硬编码的旧Bundle ID、旧CLIENT_ID等内容,所有配置均已更新为当前应用信息。
    • 确保GIDConfiguration初始化时使用的是GoogleService-Info.plist中的CLIENT_ID,而非手动输入的旧值。

内容的提问来源于stack exchange,提问作者litbe

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.14 17:24:55