如何将SHA-1添加到android应用程序
我试图在Firebase中创建一个动态链接,当我选择android应用程序时,会显示一个错误,上面写着“将SHA-1添加到此android应用程序”,我已经添加了一个凭据,但我不确定如何确切地“将SHA-1添加到此应用程序”如何将SHA-1添加到android应用程序,android,firebase,sha1,firebase-dynamic-links,Android,Firebase,Sha1,Firebase Dynamic Links,我试图在Firebase中创建一个动态链接,当我选择android应用程序时,会显示一个错误,上面写着“将SHA-1添加到此android应用程序”,我已经添加了一个凭据,但我不确定如何确切地“将SHA-1添加到此应用程序” 这是如何做到的?android studio中的SHA-1代: 从右面板中选择android studio中的Gradle 选择你的应用程序 在Tasks->android->signingReport中 双击签名报告 您将在“Gradle控制台”中找到SHA-1
这是如何做到的?android studio中的SHA-1代:
您将在“Gradle控制台”中找到SHA-1指纹 在firebase控制台中添加此SHA-1指纹
或者,您可以使用命令行获取SHA-1指纹: 对于调试证书,您应该使用:
keytool -list -v -keystore C:\Users\user\.android\debug.keystore -alias androiddebugkey -storepass android -keypass android
您应该使用windows用户目录的路径更改“c:\Users\user
”
如果您想为自己的证书获取生产SHA-1,请将“C:\Users\user\.android\debug.keystore
”替换为自定义密钥库路径,并使用密钥库和密钥传递而不是android/android
而不是像Damini所说的那样声明您在firebase控制台上获得的
SHA-1
指纹,以防万一:在使用命令行生成SHA1指纹时,指定文件夹路径时要小心。
如果您的用户名或android文件夹路径有空格,则应添加两个双引号,如下所示:
keytool -list -v -keystore "C:\Users\User Name\.android\debug.keystore" -alias androiddebugkey -storepass android -keypass android
如果您正在使用,您需要使用google play的SHA1,因为google将用google服务器上的密钥替换您的发布签名密钥
尝试在CMD中粘贴此代码:
keytool -list -v -alias androiddebugkey -keystore %USERPROFILE%\.android\debug.keystore
MacOS只需在终端中粘贴:
keytool -list -v -alias androiddebugkey -keystore ~/.android/debug.keystore -storepass android -keypass android
linux操作系统终端运行以下命令:
keytool -list -v -keystore ~/.android/debug.keystore -alias androiddebugkey -storepass android -keypass androi
在Windows上,打开命令提示符程序。您可以通过进入“开始”菜单来完成此操作
keytool -exportcert -list -v -alias androiddebugkey -keystore %USERPROFILE%\.android\debug.keystore
在Mac/Linux上,打开终端并粘贴
keytool -exportcert -list -v -alias androiddebugkey -keystore ~/.android/debug.keystore
打开终端并运行Java提供的keytool实用程序,以获取证书的SHA-1指纹。您应该同时获得发布和调试证书指纹 要获取发布证书指纹,请执行以下操作:
keytool-exportcert-list-v \-alias-keystore如果您使用的是Google Play应用程序签名,您不需要手动添加SHA-1密钥,只需登录Firebase进入“项目设置”->“集成”,然后按下按钮将Google Play与Firebase链接,SHA-1将自动添加。当我使用android studio生成sha1密钥时
Gradle->Tasks->android->signingReport
和双击
sha1键在调试模式下工作,但在构建签名APK时未工作
因此,我使用cmd生成了sha1键
- 转到java\jdk version\bin文件夹
C:\>cd C:\Program Files\Java\jdk1.8.0_121\bin
keytool -exportcert -keystore F:\testkey\damithk.jks -list -v
和类型
keytool -exportcert -keystore {path of sign jks key } -list -v
范例
C:\>cd C:\Program Files\Java\jdk1.8.0_121\bin
keytool -exportcert -keystore F:\testkey\damithk.jks -list -v
对于linux Ubuntu,打开终端并写入:-
keytool -list -v -keystore ~/.android/debug.keystore -alias androiddebugkey -storepass android -keypass android
对于Copy SHA,您可以按照以下步骤操作,而不是编写命令
否则,只有signingReport任务将一次又一次地运行。从您的
android
目录运行此命令
./gradlew signingReport
如果您不在android目录中,请运行以下命令:
cd android && ./gradlew signingReport
请检查以从android studio获取SHA-1密钥并将其添加到firebase项目中我已经获得了SHA-1密钥,但我不知道如何将其添加到我的firebase项目中,适用于android studio 4.2。请参阅stackoverflow.com/a/67546584/11365488请记住,在签名报告的输出中,复制版本和调试sha1。无法获取SHA,我花了一些时间才找到“选择渐变”,因为面板大小合适。:)Android Studio 3.3:单击Gradle面板中的大象图标,选择项目,在命令行中键入:“signingReport”,单击OK。对于搜索Gradle选项的任何人,窗口右侧垂直倾斜放置一个按钮“Gradle”。这需要更高。我完全没有意识到我的钥匙只是用来上传的,然后谷歌自己就辞职了。我花了整整一个上午才意识到这真的很有帮助!谷歌应用程序签名SHA1必须添加到您服务的SHA1列表中。Lifesaver!这一点应在报告中突出显示。他们在页面底部的提示和最佳实践中提到了这一点。但是,不清楚需要什么以及如何实现。必须使用上载密钥证书的SHA-1和SHA-256。谢谢,顺便说一句。您需要将CD刻录到java bin文件夹,keytool才能正常工作。对我来说,它是,
C:\ProgramFiles\Android\jdk\microsoft\u dist\u openjdk\u 1.8.0.25\bin
,虽然你可能会直接在C:\ProgramFiles\java\…
中安装一个通用java版本,因为我们知道链接Firebase和Google Play是完全正确的,但这是一个摆脱SHA代的超级简单的方法