在Android Studio中为Google Maps获取SHA1指纹证书

76

我希望能够从Mac上的Android Studio获取SHA1密钥。在Eclipse中很简单,但我无法在Android Studio中获取。

我已经查看了类似的问题,但没有找到在MAC上获取的方法。

签名和未签名APK的SHA1是不同的,请说明获取两者的方法。


1
获取Android Studio Gradle的发布版和调试模式的SHA-1最简单的方法。请查看此链接 - Naeem Ibrahim
10个回答

228

我得到了答案,它非常简单。 打开终端, 输入命令:


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

按下Enter键:您将获得以下信息,并可以在其中看到SHA1。

.....

证书指纹:

 MD5:  79:F5:59:................FE:09:D1:EC

 SHA1: 33:57:0A:C9:..................:91:47:14:CD

 SHA256: 39:AA:23:88:D6:...................33:DF:61:24:CB:17:47:EA:39:94:99

.......


你能展示执行该命令的完整 cmd 路径吗? - Anees U
1
当我打开终端时,我正在家目录上方输入上述命令。 - arslan haktic

51

在Android Studio中很容易简单地找到证书的SHA1密钥。
你可以按照以下步骤:

A.Open Android Studio
B.Open Your Project
C.Click on Gradle (From Right Side Panel, you will see Gradle Bar)
D.Click on Refresh (Click on Refresh from Gradle Bar, you will see List Gradle scripts of your Project)
E.Click on Your Project (Your Project Name form List (root))
F.Click on Tasks
G.Click on android
H.Double Click on signingReport (You will get SHA1 and MD5 in Run Bar)

或者

1.Click on your package and choose New -> Google -> Google Maps Activity
2.Android Studio redirect you to google_maps_api.xml

在此输入图片描述


@Jai Yea,这是最好的简单答案,但如何在发布版本中实现呢? - ch3tanz
其他获取文件SHA1密钥的方法:
  1. 点击您的包并选择新建 -> Google -> Google Maps Activity
  2. Android Studio将重定向您到google_maps_api.xml
- Jignesh Goyani

29

以上所有答案都是正确的。

但是,最简单最快的方式如下:

  1. 打开 Android Studio

  2. 打开您的项目

  3. 点击 Gradle(从右侧面板中,您将看到Gradle栏)

  4. 点击刷新(从Gradle栏中点击刷新,您将看到您的项目的Gradle脚本列表)

  5. 点击您的项目名称,例如MyProject(root)

  6. 点击任务

  7. 点击android

  8. 双击signingReport

  9. 等待几秒钟,您将在控制台栏中获得SHA1和MD5

enter image description here

如果您正在项目中添加 MapActivity,则请查看此答案以获取SHA1。 如何在Android上获取OAuth 2.0的签名证书指纹(SHA1)?


10
  1. 进入您的密钥目录/文件夹。
  2. 在终端中使用以下命令:keytool -list -v -keystore <yourKeyFileName.withExtension> -alias <yourKeyAlias>
  3. 输入密钥创建时输入的密钥密码。

yourKeyAlias是在创建密钥时提供的。


2
抱歉,但这个没有起作用,它会给出以下错误。keytool -list -v -keystore keystorename.keystore -alias aliasname keytool 错误:java.lang.Exception: Keystore 文件不存在:keystorename.keystore java.lang.Exception: Keystore 文件不存在:keystorename.keystore 在 sun.security.tools.keytool.Main.doCommands(Main.java:742) 在 sun.security.tools.keytool.Main.run(Main.java:340) 在 sun.security.tools.keytool.Main.main(Main.java:333) - arslan haktic
2
当然,您必须将“keystorename.keystore”更改为您实际的密钥库文件名称。别名名称同样适用。 - sebastian
3
明白了,谢谢。但我的keystore文件应该放在硬盘的什么位置呢? - arslan haktic

10

按照以下步骤在Android Studio中获取2.2v的SHA1指纹证书。

打开Android Studio,打开您的项目,点击Gradle(从右侧面板,您将看到Gradle栏)

单击刷新(从Gradle栏单击刷新,您将看到您的项目的Gradle脚本列表)

单击您的项目(您的项目名称为List(root)中的一个)

单击任务

单击Android

双击signing-report(您将在运行栏中获得SHA1和MD5),然后单击此按钮:enter image description here (错误日志左上角),即可获得SHA1密钥。


7

除了输入keytool命令获取SHA1指纹的方式外,另一种方法是创建虚拟项目,在添加活动模块中选择Google Map Activity,创建项目后打开values->google_maps_api.xml文件,您将看到您的Android Studio的SHA1指纹。


5

Android Studio没有像Eclipse中的Windows -> Preferences -> Android -> Build这样的设置方式。

Android Studio会在您从IDE运行或调试项目时自动对应用程序进行调试模式签名。

您可以使用以下命令:

keytool -list -v -keystore  ~/.android/debug.keystore

5

在终端中输入以下命令
keytool -list -v -keystore ~/.android/debug.keystore

它会要求您输入密码
输入'android'

然后您将获得详细信息,如SHA1。


1

After clicking signingReport You will get SHA-1 finger certificate for your application

点击 signingReport 后,您将获得应用程序的 SHA-1 指纹证书。
如果您需要任何其他帮助,我会在这里。

1

要进行生产构建/正式构建的sha密钥,请按照以下步骤操作:

步骤1)在gradle中添加发布详细信息

apply plugin: 'com.android.application'
android {
    compileSdkVersion 24
    buildToolsVersion "23.0.1"
    defaultConfig {
        applicationId "app.devdeeds.com.yourapplication"
        minSdkVersion 17
        targetSdkVersion 24
        versionCode 1
        versionName "1.0"
    }
//Signing configurations for build variants "release"
    signingConfigs {
        release {
            storeFile file("F:/Development/myapp.jks")
            storePassword "231232das"
            keyAlias "myapp_rel"
            keyPassword "dasd333_das"
        }
    }
    buildTypes {
    //link above defined configuration to "release" build type
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
            signingConfig signingConfigs.release
        }
    }
}
dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    testCompile 'junit:junit:4.12'
    compile 'com.android.support:appcompat-v7:24.0.0'
}

步骤二)从右侧菜单栏打开gradle菜单,然后选择app > android > signingReport。

enter image description here

步骤 3)点击 signingReport 然后看看神奇的事情发生了

enter image description here


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接