firebase Flutter应用程序发布后,Google登录不起作用

deyfvvtc  于 2022-11-30  发布在  Flutter
关注(0)|答案(6)|浏览(141)

我使用Flutter开发了一个应用程序,并使用以下命令在我的设备上进行了测试:

flutter run --release

一切都很好。我还试着用以下代码构建应用程序:

flutter build apk --release

然后手动安装,仍然一切正常。
我上传到商店,现在登录不工作了。我试着看logcat,当我尝试登录时,我得到的错误是:

I/flutter: exception: PlatformException(sign_in_failed, com.google.android.gms.common.api.ApiException: 12500: , null)

我尝试添加appCompat依赖项,并检查了SHA1密钥,一切都在正确的位置,我不知道为什么当我从商店下载时,它不再工作了。

6ioyuze2

6ioyuze21#

您可能需要向API提供商(在本例中为Firebase)注册Play Store应用签名密钥。
1.在Google Play控制台中,访问设置〉应用签名
1.复制SHA-1 certificate fingerprint

1.在Firebase控制台中,访问设置〉项目设置
1.单击Add fingerprint

1.将复制的SHA-1 certificate fingerprint粘贴到Certificate fingerprint文本字段
1.单击Save

voase2hg

voase2hg2#

您的应用可能没有令牌API的正确Google凭据。
当你第一次在Google Play控制台注册时,你可能选择了Google的应用签名服务。它的作用是,在你用密钥库对应用进行签名并上传到Play控制台后,Google会用生成的密钥库对应用进行签名,并推出该版本。你可以从控制台访问用于签名发布版本的密钥。在“发布管理”-〉“应用程序签名”-〉“应用程序签名证书”下。
找到证书后,您需要使用SHA1密钥,生成新的Android Oauth凭据,然后将其添加到您的google-services.json。如果您没有使用Firebase,则还需要将Oauth凭据添加到后端。
如果你看看HarshitG在这个Android线程上关于同一问题的回答,你可以看到一张图片,你可以在播放控制台上获得证书信息。
google signIn not working in release mode apk android

nszi6y05

nszi6y053#

去你的谷歌播放控制台,在发布管理,你会发现应用程序签名,在那有两个沙键,复制他们没有沙的一部分,以Firebas项目SHA证书指纹APK将在那之后工作.

6mzjoqzu

6mzjoqzu4#

对于那些家伙有这样的问题,他们最好有看看SHA证书指纹分配给他们的firebase帐户。释放和调试SHA证书指纹都是必需的。要做到这一点,你可以:
1.导航到项目中的android文件夹
1.运行此命令./gradlew signingReport
1.查找版本SHA证书指纹
1.查找调试SHA证书指纹
1.将它们添加到firebase帐户SHA证书指纹
1.重新下载google-services.json
1.将其添加到您的应用程序级文件夹您的任务完成!

x3naxklr

x3naxklr5#

对于发行版,您需要确保除调试指纹外,还向firebase添加了两个SHA证书指纹**。一个可以通过keytool检索(上传密钥证书),另一个(应用签名密钥证书)可以从play控制台复制(如上述答案中所述的应用完整性部分)

oxf4rvwz

oxf4rvwz6#

我遇到了这个问题,我这样解决了它:
Add the command below in gradle.properties file:

org.gradle.java.home=C:\Program Files\\Java\\jdk-18.0.1.1.

在我的例子中:

org.gradle.jvmargs=-Xmx1536M
android.useAndroidX=true
android.enableJetifier=true
org.gradle.java.home=C:\Program Files\\Java\\jdk-18.0.1.1

然后,在终端中,将目录更改为android.(我使用windows)

cd android

最后,我在终端写了./gradlew signingreport,得到了SHA1和SHA-256。然后添加到firebase。

相关问题