Flutter - 获取 SHA-1 证书 - Android Studio 3.2.1

Posted

技术标签:

【中文标题】Flutter - 获取 SHA-1 证书 - Android Studio 3.2.1【英文标题】:Flutter - Get SHA-1 Certificate - Android Studio 3.2.1 【发布时间】:2019-04-28 02:19:47 【问题描述】:

我正在尝试为我的 Flutter 项目检索 SHA-1 指纹证书。这通常可以通过进入 android Studio 右侧的 Gradle 面板并单击 signingReport 来完成。

但问题是,在 Flutter 中,它根本不显示 Gradle 面板,经过一个小时的搜索,我仍然找不到让该面板显示的方法。

我尝试了 Keytool 的方式,但它告诉我命令提示符中没有这样的命令。如何为我的颤振项目获得 SHA-1 证书?我需要它来使用 Firebase Auth 登录我的 Flutter 项目。

我还在 Firebase 文档中进行了搜索,没有关于如何在颤振中找到 SHA-1 的文档。它只是说使用 Firebase 身份验证需要 SHA-1。

相关问题https://github.com/flutter/flutter/issues/24776

【问题讨论】:

您是否尝试过在 Android Studio 中打开 android/ 目录并检查菜单是否可用? @Günter 是的,我有。我什至打开了build.gradle 文件之一。 【参考方案1】:

keytool -list -v -keystore c:\users\your_user_name\.android\debug.keystore -alias androiddebugkey -storepass android -keypass android

【讨论】:

【参考方案2】:

我遇到了同样的问题,获取 SHA-1 有两种方法:

    使用 Keytool(不适用于我) 使用我使用过的 Gradle 的签名报告,FIrst 在终端上使用以下命令转到 android 文件夹:
cd android               

和以下命令获取报告:

./gradlew signingReport

然后它将显示signingReport,您可以从中检索 SHA-1。

【讨论】:

嗨。谢谢!你的回答奏效了。它不需要chmod 命令。在Flutter项目的/android目录下直接做./gradlew signingReport就可以了。【参考方案3】:

使用来自Authenticating Your Client 的命令和命令提示符:

keytool -list -v -alias androiddebugkey -keystore %USERPROFILE%\.android\debug.keystore

如果命令不起作用,则包含keytool.exe 的路径。对我来说,那是C:\Program Files\Java\jdk-12.0.2\bin\keytool.exe。所以我使用的命令如下:

"C:\Program Files\Java\jdk-12.0.2\bin\keytool.exe" -list -v -alias androiddebugkey -keystore %USERPROFILE%\.android\debug.keystore

【讨论】:

【参考方案4】:

Authenticating Your Client 记录了如何使用 keytool 获取 SHA-1。

【讨论】:

【参考方案5】:

您是说以下选项(查看 Gradle 面板)根本不可用?

【讨论】:

不在我的颤振项目中,不。你有 Flutter 项目还是常规的 Android 项目?因为我在那个菜单中看不到任何颤振选项,通常在处理颤振项目时会出现。

以上是关于Flutter - 获取 SHA-1 证书 - Android Studio 3.2.1的主要内容,如果未能解决你的问题,请参考以下文章

密钥库证书的 SHA-1 指纹

密钥库证书的 SHA-1 指纹

我在哪里使用颤振获得 SHA-1 证书指纹? (使用颤振创建--androidx ProjectName)

密钥库证书的SHA-1指纹

Microsoft 根证书计划弃用 SHA-1 哈希算法

如何应对SHA-1加密算法升级为SHA-256