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

React Native Android:Gmail及Firebase手机OTP登录发布版无法运行

Android发布版Gmail/Firebase OTP登录失效排查方案(调试版正常)

核心排查方向及解决方案

1. 确认发布版签名指纹完全正确添加到Firebase

调试版和发布版用的是不同的签名密钥,很多人会误把调试版的SHA-1/256当成发布版的添加:

  • 生成发布版指纹命令:keytool -list -v -keystore 你的发布签名文件路径(如release.jks) -alias 签名别名
  • Firebase控制台需同时添加SHA-1和SHA-256(Google登录现在依赖SHA-256验证)
  • 添加后重新下载google-services.json,替换项目中app模块下的同名文件,确保发布版构建时加载最新配置

2. 修复ProGuard/R8混淆导致的代码丢失

发布版默认开启混淆,会破坏Google登录、Firebase Auth的核心类,需在proguard-rules.pro中添加以下规则:

# Google SignIn 保护规则
-keep class com.google.android.gms.auth.api.signin.** { *; }
-keep class com.google.android.gms.common.api.** { *; }
-keep class com.google.android.gms.tasks.** { *; }

# Firebase Auth 保护规则
-keep class com.google.firebase.auth.** { *; }
-keep class com.google.firebase.components.** { *; }
-keep class com.google.firebase.iid.** { *; }

同时确认build.gradle中minifyEnabled true时,混淆规则已正确应用。

3. 验证发布版配置文件及插件引用

  • 检查app模块下的google-services.json是否为Firebase控制台最新下载的版本,避免旧文件残留
  • 确认app模块的build.gradle底部已添加Google服务插件:apply plugin: 'com.google.gms.google-services'

4. 核对Firebase控制台应用配置

  • 确保控制台中Android应用的包名与发布版包名完全一致(大小写敏感)
  • 检查Phone Authentication是否已启用,且发布版的SHA-1已添加(OTP验证依赖SHA-1完成设备校验)

5. 捕获发布版具体错误日志

现有代码未打印未知错误信息,建议修改代码捕获详细错误,方便定位:

try {
  await GoogleSignin.hasPlayServices();
  const {accessToken, idToken} = await GoogleSignin.signIn();
  setloggedIn(true);
} catch (error) {
  if (error.code === statusCodes.SIGN_IN_CANCELLED) {
    alert('Cancel');
  } else if (error.code === statusCodes.IN_PROGRESS) {
    alert('Signin in progress');
  } else if (error.code === statusCodes.PLAY_SERVICES_NOT_AVAILABLE) {
    alert('PLAY_SERVICES_NOT_AVAILABLE');
  } else {
    // 新增:打印具体错误信息
    alert(`登录出错:${error.message}`);
    console.error('Google登录错误详情:', error);
  }
}

也可通过adb logcat *:E过滤发布版错误日志,或集成Firebase Crashlytics捕获崩溃信息。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.16 04:25:35