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

Google账号登录异常:模拟器正常真机无法使用,求解决方案

Google账号登录真机失效问题排查与解决

问题描述

使用firebase_ui_oauth_google包实现Google账号登录,模拟器上登录功能可正常运行,但真机上无法完成登录。登录实现代码如下:

Future<UserCredential> signInWithGoogle() async { 
  final GoogleSignInAccount? googleUser = await  GoogleSignIn().signIn(); 
  final GoogleSignInAuthentication? googleAuth = await googleUser?.authentication; 
  final credential = GoogleAuthProvider.credential( 
    accessToken: googleAuth?.accessToken, 
    idToken: googleAuth?.idToken, 
  ); 
  return await FirebaseAuth.instance.signInWithCredential(credential);
}

排查与解决步骤

  • 配置SHA-1/SHA-256指纹
    真机登录必须在Firebase控制台配置对应签名证书的SHA指纹:

    1. 打开Android Studio,通过右侧Gradle面板执行Tasks > android > signingReport,获取debug和release版本的SHA-1、SHA-256指纹。
    2. 登录Firebase控制台进入项目设置,在「应用」标签页添加获取到的指纹信息。
  • 更新Google服务配置文件
    配置完指纹后,重新下载google-services.json文件,替换项目android/app目录下的旧文件,确保配置包含最新指纹数据。

  • 检查Google Play服务版本
    确认真机安装了最新版Google Play服务,旧版本可能导致登录验证失败,可通过Google Play商店搜索更新。

  • 验证OAuth客户端ID
    登录Google Cloud控制台,进入「API和服务 > 凭据」页面,确认已创建Android类型的OAuth客户端ID,且包名、SHA指纹与项目完全匹配。

  • 添加必要网络权限
    在android/app/src/main/AndroidManifest.xml中添加网络权限:

    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
    
  • 指定GoogleSignIn客户端ID
    初始化GoogleSignIn时显式指定客户端ID,避免自动匹配错误:

    final GoogleSignIn googleSignIn = GoogleSignIn(
      clientId: "你的Android客户端ID",
    );
    
  • 捕获异常定位问题
    在代码中添加异常捕获,打印具体错误信息辅助排查:

    Future<UserCredential> signInWithGoogle() async { 
      try {
        final GoogleSignInAccount? googleUser = await GoogleSignIn().signIn(); 
        final GoogleSignInAuthentication? googleAuth = await googleUser?.authentication; 
        final credential = GoogleAuthProvider.credential( 
          accessToken: googleAuth?.accessToken, 
          idToken: googleAuth?.idToken, 
        ); 
        return await FirebaseAuth.instance.signInWithCredential(credential);
      } catch (e) {
        print("Google登录错误: $e");
        rethrow;
      }
    }
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.06 05:25:26