如何在Android Studio中获取SHA-1指纹证书以获得调试模式?

时间:2014-12-22 19:47:15

标签: google-maps android-studio

我已将自己从Eclipse转移到Android Studio。现在我正在尝试使用我的地图应用程序。所以我需要我的SHA-1指纹证书编号。

当我使用Eclipse时,它正好在 Windows - >下偏好 - > Android - >构建即可。但是在Android Studio中,我找不到这样的选项,以便我可以轻松找到指纹。我正在使用Windows。我从这个link读到:

  

Android Studio会在您自动以调试模式签署您的应用   从IDE运行或调试项目。

所以我尝试在this link设置Java bin路径后在命令行中运行它,但遗憾的是找不到我的指纹。 据说这是非法选择

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

有没有办法从Android Studio中找到SHA-1指纹,就像在Eclipse中一样容易?由于我是Android Studio中的新手,找到它的完整过程是什么?

我想添加的另一件事是我的Eclipse生成了SHA-1指纹,之前我在Google开发者控制台中将该应用程序注册在该指纹上,并且我通过该API密钥在Eclipse中使用该应用程序。在Android Studio中我的项目是否可以使用相同的API密钥?

39 个答案:

答案 0 :(得分:1091)

最简单的方法:

在最后一步为Android Studio V 2.2添加了更新

有两种方法可以做到这一点。

<强> 1。更快的方式:

  1. 打开Android Studio
  2. 打开您的项目
  3. 点击Gradle(从右侧面板,您将看到 Gradle Bar
  4. 点击刷新(点击从 Gradle Bar 刷新,您会看到项目的列表 Gradle脚本)
  5. 点击您的项目(您的项目名称表格列表(根))
  6. 点击任务
  7. 点击Android
  8. 双击signedReport(您将在运行栏中获得 SHA1 MD5 (有时它将在Gradle控制台中))
  9. 模块选择下拉列表中选择应用模块以运行或调试您的应用
  10. 请查看以下屏幕截图:

    enter image description here

    <强> 2。使用Google地图活动:

    1. 打开Android Studio
    2. 打开您的项目
    3. 点击文件菜单 - &gt;选择 - &gt;点击 Google - &gt;选择 Google地图活动
    4. 会出现一个对话框 - &gt;点击完成
    5. Android Studio会自动使用google_maps_api.xml
    6. 生成 XML 文件名为
    7. 您可以在此处获取调试SHA1 键(在XML文件的第10行
    8. 检查以下屏幕截图:

      Enter image description here

      Android Studio V 2.2更新

      执行存在问题。

      解决方案:

      • 点击运行栏
      • 切换任务执行/文字模式

      检查以下屏幕截图:

      enter image description here

      完成。

答案 1 :(得分:287)

我的问题与我将Google Maps项目从 Eclipse 转移到 Android Studio 相同。我通过以下方式解决了我的问题:

通过以下命令转到Java bin目录:

C:\Program Files\Java\jdk1.7.0_71\bin>

现在在命令窗口(CMD.EXE)中键入以下命令:

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

示例:

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

如果你不知道用户名,你可以在cmd中写这个:

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

你将获得SHA1。

然后我从https://code.google.com/apis/console创建了一个新密钥,因为我的软件包名称已更改,然后在我的应用程序中使用此密钥。它工作正常。

确保您位于 jdkX.X.X_XX(我的文件夹名称为jdk1.7.0_71) BIN 文件夹中,否则如果您不知道是什么您可以通过打开Java文件夹找到它的文件夹名称,您将看到文件夹名称是什么,但您必须在BIN文件夹中然后运行此命令。今天我通过上面的过程在cmd命令窗口中得到了我的SHA1值。

<强>快照:

Enter image description here

答案 2 :(得分:112)

对于Mac,这非常有效:

keytool -list -v -keystore ~/.android/debug.keystore -alias androiddebugkey -storepass android -keypass android

答案 3 :(得分:112)

我刚刚找到了在Android Studio中获取SHA-1的案例:

  1. 点击您的包裹,然后选择 - &gt; Google - &gt; Google地图活动
  2. Android Studio会将您重定向到google_maps_api.xml
  3. 您将看到获得google_maps_key所需的一切。

    Image

答案 4 :(得分:38)

为Android生成SHA-1密钥的最佳解决方案来自Android Studio

点击最右侧的Gradle:

点击刷新图标,您将看到该应用的名称:

点击任务 - &gt; 报告 - &gt; 签署报告

在控制台的底部找到SHA-1键:

答案 5 :(得分:35)

[2017年更新]

第1步:在Android Studio的右上角单击“Gradle”选项。

Android Studio Click On Gradle option

第2步:

- 点击刷新(点击从Gradle Bar刷新,你会看到项目的List Gradle脚本)

- 单击您的项目(您的项目名称表单列表(根))

- 点击任务

- 点击Android

- 双击signedReport(您将在Gradle控制台/运行栏中获得SHA1和MD5)

enter image description here

第3步:点击Android Studio底部的Gradle Console选项,查看您的SHA1密钥。

enter image description here

第4步:现在您已获得SHA密钥但无法运行项目。这就是为什么将配置更改为应用模式的原因。见下图。

enter image description here

喜欢这个。

enter image description here

第5步:快乐编码!!

答案 6 :(得分:22)

我将与@Hiren Patel一起回答 android studio 2.2

enter image description here

答案 7 :(得分:21)

许多用户已经给出了他们的答案,并且在低于 4.2 的 Android Studio 版本中运行良好。但是对于 Android Studio 4.2 和更新版本,请按照以下步骤生成 SHA 密钥。这些图片中给出了步骤。

步骤:-

1) 点击gradleAndroid Studio 的右上角。正如你在这张图片中看到的。

Step1

2) 现在点击图标,如下图所示。将打开一个新的可搜索窗口/屏幕

SHA2

3) 现在输入gradle签名报告并按回车开始生成SHA KEY< /strong> 如下图所示。

sha3

4) 您的 SHA 密钥 将生成如下图所示。使用这些步骤,您可以在 Android Studio 4.2 中生成 SHA KEY。

sha4

答案 8 :(得分:18)

适用于Linux&amp; Mac

keytool -list -v -keystore ~/.android/debug.keystore -alias androiddebugkey -storepass android -keypass android 

答案 9 :(得分:12)

我使用终端从Mac上直接使用了以下命令。我有SHA1手指。这是命令:

keytool -list -v -keystore ~/.android/debug.keystore -alias androiddebugkey -storepass android -keypass android

答案 10 :(得分:9)

获取生产密钥库的SHA1:

  1. 构建 - &gt;生成签名APK ...

  2. 使用密码创建密钥库并按照步骤

  3. 转到Mac / Library / Java / JavaVirtualMachines / jdk1.8.0_20.jdk / Contents / Home / bin并在cd命令指向它后将bin文件夹拖到终端,这样就可以使用keytool工具。所以,在终端写cd(在这里拖动垃圾箱),然后按回车。

  4. 然后,将其复制并粘贴到终端:

    keytool -exportcert -alias Your_keystore_AliasName -keystore /Users/Home/Development/AndroidStudioProjects/YoutubeApp/app/YoutubeApp_keystore.jks -list -v
    

    删除我的路径并转到存储密钥库的位置,然后拖动您的keystone并在命令行中将-keystore删除,以便创建路径。

    另外,擦除Your_keystore_AliaseName以放置您在创建时使用的别名keystone名称。

  5. Enter 并输入密码:)

  6. 当您输入密码时,终端不会显示它接收键盘输入,但实际上是这样,所以输入密码并按 Enter 即使您没有看到输入密码。

答案 11 :(得分:8)

Gnu / Linux - Mac - Windows

首先: - 复制此命令

keytool -list -v -keystore ~/.android/debug.keystore -alias androiddebugkey -storepass android -keypass android 

第二:现在将命令复制并粘贴到Android Studio的终端中 enter image description here

<强>结果!

enter image description here

祝你好运!

答案 12 :(得分:8)

  1. 点击右窗格中的Gradle图标。
  2. 单击根项目名称。
  3. 点击任务
  4. 点击Android
  5. 点击签名报告
  6. 在底部窗格中的
  7. ,您会看到“运行报告”
  8. 点击&#34;切换任务执行/文字模式&#34;
  9. 你可以看到sha-1
  10. Android Studio SHA-1

答案 13 :(得分:8)

如果您使用的是Android Studio,则可以快速获取 SHA-1和MD5证书指纹(调试,发布... 所有构建类型 !!) Gradle Tasks

  

signingReport

SHA-1和MD5证书显示在消息日志

Android插件(在Gradle应用程序中配置)创建默认的调试模式。

  

com.android.application

到密钥库的文件路径:

HOME/.android/debug.keystore

我建议附加 debug.keystorebuild.gradle。为此,将文件debug.keystore放入app文件夹,然后在Gradle app中添加SigningConfigs:

apply plugin: 'com.android.application'

    android {
        ................
        signingConfigs {
            debug {
                storeFile file("../app/debug.keystore")
                storePassword "android"
                keyAlias "androiddebugkey"
                keyPassword "android"
            }
            release {
                storeFile file("../app/debug.keystore")
                storePassword "android"
                keyAlias "androiddebugkey"
                keyPassword "android"
            }
        }
        ........
    }

额外:如果您希望创建发布,请将文件release.keystore放入应用文件夹中。 (此示例使用相同的debug.keystore。)

答案 14 :(得分:7)

如果你有Android Studio那么它非常简单。只需使用Android Studio创建MapActivity,创建后即可进入google_maps_api.xml。在那里,评论中会有一个链接。如果您将其粘贴到浏览器中,它会询问一些细节,然后生成您的API。不需要使用keytool和所有。

屏幕截图:

Enter image description here

答案 15 :(得分:6)

使用简单的命令:

keytool -exportcert -keystore path-to-debug-or-production-keystore -list -v

您将获得SHA1密钥。

答案 16 :(得分:6)

这适用于我的情况:使用%USERPROFILE%而不是自动提供存储在此路径中的路径.keystore文件 C:用户/用户名/ .android :< / p>

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

答案 17 :(得分:5)

  

我找到了一个非常简单的过程来找到你使用的MD5,SHA-1指纹   Android Studio。

     
      
  1. 运行您的项目
  2.   
  3. 转到Gradle菜单(菜单:查看 - &gt;工具窗口 - &gt; Gradle)
  4.   
  5. 转到Gradle窗口中的'signingReport'。 (您的项目 - &gt;任务 - &gt; android - &gt; signingReport)
  6.   
  7. 运行它。 (使用双击或Ctrl + Shift + F10)
  8.   
  9. 在“运行”窗口中,您将找到所有信息。
  10.   

它仅适用于调试模式。在realease模式中,我看不到sha-1。 这是gradlew signingReport

的结果
Variant: release
Config: none
----------
Variant: releaseUnitTest
Config: none
----------
Variant: debug
Config: debug
Store: path\Android\avd\.android\debug.keystore
Alias: AndroidDebugKey
MD5: xx:xx:xx:62:86:B7:9C:BC:FB:AD:C8:C6:64:69:xx:xx
SHA1: xx:xx:xx:xx:0F:B0:82:86:1D:14:0D:AF:67:99:58:1A:01:xx:xx:xx
Valid until: Friday, July 19, 2047
----------

所以我必须使用keytool来获得sha-1。官方Firebase文档:

Get_sha-1_for_release

答案 18 :(得分:5)

我想在Softcoder给出的答案中添加一个内容。我看到有些人无法在command line上正确地提供 debug.keystore 路径。他们看到他们正在做上面接受的确切过程,但它不起作用。此时尝试拖动debug.keystore并将其放在命令行上。如果接受的答案不适合您,这将有所帮助。毫不犹豫地完成整个过程。这是一个很好的答案。

答案 19 :(得分:5)

对于Windows 10,来自Android Studio终端:

keytool -exportcert -alias androiddebugkey -keystore %USER_PROFILE%"/.android/debug.keystore -list -v

注意:对于debug.keystore,密码为&#34; android&#34;。调试密钥库通常位于"%USER_PROFILE%"/.android/debug.keystore

答案 20 :(得分:4)

我是这样做的:

第1步:转到此文件夹

On Mac: /Users/<username>/.android/

On Windows: C:\Documents and Settings\<username>\.android\

On Linux: ~/.android/

第2步:运行此命令行:

keytool -list -v -keystore debug.keystore -storepass android

您将看到SHA-1键。

答案 21 :(得分:4)

如果您只想查看 SHA 证书值,则可以从 android 文件夹运行:

 gradlew signingReport

...这会让您快速轻松地查看指纹

答案 22 :(得分:4)

单击右侧面板上的Gradle图标,然后单击(根)。

  

任务&gt; android&gt; signingReport

然后Gradle脚本将执行,您将看到您的密钥。

答案 23 :(得分:3)

在Android studio 4+(不确定版本)中,如果您点击右侧栏中的Gradle,它不会显示任何生成签名报告的选项。它会告诉你:enter image description here

点击 Task list not built... 信息并取消选中选项 Do not build gradle task list.. 并保存设置。

enter image description here

然后点击gradle同步按钮: enter image description here

然后你会看到signingreport选项: enter image description here

答案 24 :(得分:2)

使用keytool的API Manager中的说明:

  

从AndroidManifest.xml文件中获取包名称。然后使用   以下命令获取指纹:

     

<强> keytool -list -v -keystore mystore.keystore

答案 25 :(得分:2)

在Android Studio V 1.5.1中创建新的&#34; Google Maps Project&#34;时,最后一个屏幕会打开google_maps_api.xml文件并显示屏幕,其中包含以下说明:

资源:

  

TODO:在运行应用程序之前,您需要一个Google Maps API密钥。

     

要获得一个,请点击此链接,按照说明操作,然后按&#34;创建&#34;最后:

     

https://console.developers.google.com/flows/enableapi?apiid=maps_android_backend&keyType=CLIENT_SIDE_ANDROID&r=您的SHA-1 +您的包裹名称

     

您还可以使用此行将您的凭据添加到现有密钥:
  你的SHA-1:你的包裹名称

     

或者,请按照此处的说明进行操作:
  https://developers.google.com/maps/documentation/android/start#get-key

     

获得密钥后(以&#34; AIza&#34;开头),替换&#34; google_maps_key&#34;此文件中的字符串。
  <string name="google_maps_key" templateMergeStrategy="preserve" translatable="false">YOUR GOOGLE MAPS KEY</string>

要获取 GOOGLE MAPS KEY ,只需将提供的网址链接剪切并粘贴到您的浏览器中,然后在创建新应用程序时按照上述说明操作。 SHA-1Package names已经在给定的链接中,因此您无需了解它们。但是,当您按照创建项目的说明完成时,它们将位于resources>Values>google_maps_api.xml文件中的项目中。

答案 26 :(得分:1)

密钥库的路径是双引号。它工作正常。

keytool -list -v -keystore "C:\Users\App innovation\.android\debug.keystore" -alias androiddebugkey -storepass android -keypass android

答案 27 :(得分:1)

对于 Android Studio 4.2 或新版

转到右侧的Gradle

enter image description here

打开它然后点击执行 Gradle 任务,这个盘子就打开了 enter image description here

然后您必须输入signingreport并按回车这将执行命令并提供结果。

对于旧版 Android Studio

您可以在旧版本上按照上述所有步骤获得结果。

答案 28 :(得分:1)

如果Google Maps需要SHA1,您只需在LogCat中看到错误日志。

答案 29 :(得分:1)

对我来说,最快捷的方法是在终端命令行中输入./gradlew signingReport

答案 30 :(得分:1)

这对我有用:

keytool -exportcert -alias androiddebugkey -keystore

将path-to-debug-or-production-keystore放在此处,如C:\ users \ youruser.android \ debug.keystore -list -v

确保您已经位于命令或终端窗口的Java\jdk*\bin目录中。

然后使用Android作为密码。

有时网络资源可能会产生误导。这些是有效的:

答案 31 :(得分:1)

您可以使用以下命令并使用您的系统名称更改AJAY SUNDRIYAL。这仅适用于您的debug.keystore。这对您有用。

C:\Program Files\Java\jdk1.8.0_91\bin>keytool -list -v -keystore "c:\users\AJAY SUNDRIYAL\.android\debug.keystore" -alias androiddebugkey -storepass android -keypass android

答案 32 :(得分:1)

  • 转到文件&gt;项目结构 无论您从app

  • 获得名称,请选择mobileModules
  • 选择Signing标签。

  • 您可以在 + 按钮上添加证书。

答案 33 :(得分:0)

简单,在启动画面中调用此方法:hash()和getCertificateSHA1Fingerprint(),然后在日志中显示键

MEDIA_URL

谢谢。

答案 34 :(得分:0)

keytool -list -v -keystore ~/.android/debug.keystore -alias androiddebugkey -storepass android -keypass android 

答案 35 :(得分:0)

请按照以下步骤操作

gradle(在右上角)> 点击你的项目名称> Tasks > android > 双击signingReport

然后你会在4:Run中得到SHA1等信息(会自动出现)。

答案 36 :(得分:0)

获取指纹的最简单方法是通过单击下拉菜单并单击构建,从应用程序切换到已签名的报告。

enter image description here

然后,您将能够在底部窗格中看到sha1指纹,您可以在其中看到调试报告和堆栈跟踪。当您想在设备或模拟器上运行应用程序时,N.B记得切换回应用程序。

答案 37 :(得分:-1)

第一步,进入C盘,打开“程序文件”->“打开JAVA文件夹”->“打开Bin并双击jarsigner.exe”

然后打开Cmd

转到C:\ Program Files \ Java \ jdk1.8.0_191 \ bin,然后输入然后转到C:\ Program Files \ Java \ jdk1.8.0_191 \ bin> keytool -list -keystore“ F:\ BTG UPDATE BUILD \ Beyond_The_Game.jks“

输入Just Show输入Kaystoer密码*****输入您的密码,最后输入Release SHA键使您感谢enter image description here

答案 38 :(得分:-1)

我正在这样做它的工作

keytool.exe -list -v -alias ALIAS_NAME -keystore "E:\MID_PATH\trackMeeKeyStore.jks" -storepass PASS -keypass PASS