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

React Native应用Firebase配置SSO:模拟器正常真机异常求助

排查React Native Firebase SSO真机失效问题

1. 检查签名配置是否混淆

  • 打开android/app/build.gradle,确认Debug和Release变体的签名配置是否独立。很多情况是不小心让Release复用了Debug的签名,导致密钥一致:
    错误示例(复用Debug配置):
    signingConfigs {
        debug {
            storeFile file('debug.keystore')
            storePassword 'android'
            keyAlias 'androiddebugkey'
            keyPassword 'android'
        }
        release {
            signingConfig signingConfigs.debug
        }
    }
    
    正确的Release配置应指向正式密钥库:
    release {
        storeFile file('your-release-key.keystore')
        storePassword '你的密钥库密码'
        keyAlias '你的密钥别名'
        keyPassword '你的密钥密码'
    }
    

2. 核对Firebase包名匹配

  • 确认Firebase控制台注册的Android应用包名,和android/app/src/main/AndroidManifest.xml里的package属性完全一致,大小写、字符都不能错。

3. 确保google-services.json正确替换

  • 重新生成的google-services.json必须覆盖android/app/目录下的旧文件,不要放到子目录或其他位置。

4. 清理真机缓存与重装应用

  • 卸载真机上的现有应用,清除Google Play服务的缓存,再重新安装调试版本。旧的签名缓存可能残留导致验证失败。

5. 捕获具体Auth错误信息

  • 在登录逻辑里添加错误监听,获取精准失败原因,不要只看现象:
    import auth from '@react-native-firebase/auth';
    import { GoogleSignin } from '@react-native-google-signin/google-signin';
    
    const signInWithGoogle = async () => {
      try {
        await GoogleSignin.hasPlayServices();
        const userInfo = await GoogleSignin.signIn();
        const googleCredential = auth.GoogleAuthProvider.credential(userInfo.idToken);
        await auth().signInWithCredential(googleCredential);
      } catch (error) {
        console.log('Google登录失败:', error.code, error.message);
        // 比如DEVELOPER_ERROR通常对应签名/配置不匹配
      }
    };
    

6. 检查真机Google Play服务版本

  • 确保真机上的Google Play服务是最新版本,过低版本可能不支持最新的Auth验证流程,可在Google Play商店更新。

7. 验证密钥库有效性

  • 用keytool命令手动验证密钥库信息,和signingReport结果对比:
    keytool -list -v -keystore 你的密钥库文件路径.keystore
    
    输入密码后查看SHA-1和SHA-256,确认和控制台添加的一致。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.15 05:42:08