我的 Windows 名称中有一个空格像 C:\Users\Jim Johnson 这样并且无法执行 keytool 来获取 SHA1 密钥

问题描述

我正在尝试获取 Firebase 的 SHA1 密钥并尝试使用该命令

顺便说一句,吉姆·约翰逊是个虚名

keytool -list -v -keystore C:\Users\Jim Johnson\.android\debug.keystore -alias androiddebugkey -storepass android -keypass android

而且我几乎检查了所有其他内容(keytool 工作正常,环境变量全部检查)但我收到错误

Illegal option:  Johnson\.android\debug.keystore
keytool -list [OPTION]...

Lists entries in a keystore

Options:

 -rfc                    output in RFC style
 -alias <alias>          alias name of the entry to process
 -keystore <keystore>    keystore name
 -cacerts                access the cacerts keystore
 -storepass <arg>        keystore password
 -storetype <type>       keystore type
 -providername <name>    provider name
 -addprovider <name>     add security provider by name (e.g. SunPKCS11)
   [-providerarg <arg>]    configure argument for -addprovider
 -providerclass <class>  add security provider by fully-qualified class name
   [-providerarg <arg>]    configure argument for -providerclass
 -providerpath <list>    provider classpath
 -v                      verbose output
 -protected              password through protected mechanism

Use "keytool -?,-h,or --help" for this help message

我认为是因为我的名字中有一个空格。没有看到我看过的教程中的人在他们的名字中使用了空格。

有什么办法可以解决这个问题吗?

解决方法

报价。 "C:\Users\Jim Johnson\.android\debug.keystore" 将完成工作。

,

如果您使用的是 android studio,您可以通过打开您的项目并从右侧边栏中选择 Gradle(见下图)来轻松找到您的 SHA-1 密钥。 Gradle 应该可以在右侧进行选择。

接下来,按照文件夹路径Tasks -> android,然后双击signingReport。

Android studio 应该会为您提供几个密钥,其中之一就是您正在寻找的 SAH-1。这比使用命令行容易得多。

screen clipping from android studio on Windows