密钥库文件不存在

Bas*_*Bas 38 mono android google-api xamarin

我正在尝试获取SHA1指纹,以便获得Google API密钥.我在以下目录中:

/Library/Java/JavaVirtualMachines/jdk1.8.0_20.jdk/Contents/Home/bin

然后我从谷歌网站执行命令:

keytool -list -v -keystore mystore.keystore

但它给出了这个错误:

keytool error: java.lang.Exception: Keystore file does not exist: mystore.keystore
java.lang.Exception: Keystore file does not exist: mystore.keystore
    at sun.security.tools.keytool.Main.doCommands(Main.java:742)
    at sun.security.tools.keytool.Main.run(Main.java:340)
    at sun.security.tools.keytool.Main.main(Main.java:333)
Run Code Online (Sandbox Code Playgroud)

我按照教程,但我不能让它工作!有谁知道我做错了什么?

BTW:我正在使用带有Xamarin Studio 5.5.2的Macbook Pro.

And*_*rey 69

Linux和Mac命令

keytool -list -v -keystore ~/.android/debug.keystore -alias androiddebugkey -storepass android -keypass android
Run Code Online (Sandbox Code Playgroud)

将为您提供SHA1,SHA256,MD5作为默认调试密钥.它可以用于谷歌播放服务的开发和调试.

有关出版证书,请访问https://developer.android.com/studio/publish/app-signing.html


Tom*_*ers 25

你说你正在运行命令......

/Library/Java/JavaVirtualMachines/jdk1.8.0_20.jdk/Contents/Home/bin
Run Code Online (Sandbox Code Playgroud)

您的密钥库文件也在该目录中吗?如果没有,那么您需要指定密钥库文件的路径,例如

keytool -list -v -keystore ~/somefolder/mystore.keystore
Run Code Online (Sandbox Code Playgroud)

使用的密钥库应该是用于签署应用程序的密钥库.对于Xamarin调试版本,这将是位于的调试密钥库/Users/[USERNAME]/.local/share/Xamarin/Mono\ for\ Android/debug.keystore.OSX上的命令就是......

keytool -list -v -keystore /Users/[USERNAME]/.local/share/Xamarin/Mono\ for\ Android/debug.keystore -alias androiddebugkey -storepass android -keypass android
Run Code Online (Sandbox Code Playgroud)

或者在Windows 7上

keytool -list -v -keystore C:\Users\[USERNAME]\AppData\Local\Xamarin\Mono for Android\debug.keystore -alias androiddebugkey -storepass android -keypass android
Run Code Online (Sandbox Code Playgroud)

  • 我找不到我的密钥库,我不确定它在哪个目录中。 (2认同)
  • 您需要从用于对您的应用进行签名的密钥库中生成Google API密钥所需的指纹。对于Xamarin调试版本,它使用其调试密钥库。您的命令将是`keytool -list -v -keystore / Users / [USERNAME] /。local / share / Xamarin / Mono \ for \ Android / debug.keystore -alias androiddebugkey -storepass android -keypass android`,其中[ USERNAME]是您的mac用户。 (2认同)

M E*_*B O 11

Linux 或 Mac 或 Windows,使用完整路径

\n

苹果:

\n
keytool -list -v -keystore /Users/username/.android/debug.keystore\n-alias androiddebugkey -storepass android -keypass android\n
Run Code Online (Sandbox Code Playgroud)\n

Linux(在我的例子中是Ubuntu):

\n
keytool -list -v -keystore /home/username/.android/debug.keystore\n-alias androiddebugkey -storepass android -keypass android\n
Run Code Online (Sandbox Code Playgroud)\n

视窗:

\n
keytool -list -v -keystore C:\\Users\\username\\.android\\debug.keystore\n-alias androiddebugkey -storepass android -keypass android\n
Run Code Online (Sandbox Code Playgroud)\n

不要忘记更换username为您的\xe2\x9b\x91\xef\xb8\x8f 非常重要\xe2\x9d\x97\xef\xb8\x8f

\n

希望对你有帮助!

\n


Pra*_*tel 9

我面临同样的问题,但通过以下命令解决:

keytool -exportcert -keystore C:\Users\<USERNAME>\.android\debug.keystore -list -v
Run Code Online (Sandbox Code Playgroud)

操作系统: Windows 7


Die*_*ezú 8

我有windows 10,我去了路线

c:/Users/usuario/.android/
Run Code Online (Sandbox Code Playgroud)

在目录中,执行命令:

keytool -exportcert -keystore debug.keystore -list -v
Run Code Online (Sandbox Code Playgroud)

必须生成指纹:

SHA-1: 73:BE:1A:.......................
MDO: 73:BE:A1.........................
SHA-256: 3B:B8:98:...................
Run Code Online (Sandbox Code Playgroud)


Chu*_*ulo 6

在我的情况下,debug.keystore是在 Android Studio 上第一次运行应用程序后生成的


Mar*_* JH 6

我遇到过同样的问题。我的错误是

keytool错误:java.lang.Exception:密钥库文件不存在:/Users/[USER_NAME]/.android/debug.keystore java.lang.Exception:密钥库文件不存在:/Users/[USER_NAME]/.android/ debug.keystore 在 java.base/sun.security.tools.keytool.Main.doCommands(Main.java:910) 在 java.base/sun.security.tools.keytool.Main.run(Main.java:416) java.base/sun.security.tools.keytool.Main.main(Main.java:409)

我检查了我的 /Users/[USER_NAME]/.android/ 目录,但在那里找不到debug.keystore文件。

原因

我使用了 VSCODE,并且通过 iOS 模拟器仅运行了适用于 iOS 的应用程序。

解决方案:

我打开 Android Studio 并使用 Android 模拟器运行我的 Android 应用程序。

然后我在 .android/ 目录中得到了 debug.keystore 文件。

然后我再次尝试下面的命令:

keytool -list -v -alias androiddebugkey -keystore ~/.android/debug.keystore
Run Code Online (Sandbox Code Playgroud)

并且运行没有任何错误。

我希望它对你有帮助。


Kev*_*ose 6

我在 Windows 10 中也遇到了同样的错误。但整理了一下,终于得到了SHA-1 Key。

我按照以下步骤操作

1.打开C盘并按照此路径操作C:\Program Files\Java\jdk1.8.0_201\bin

2.在bin文件夹内打开CMD并运行命令keytool -exportcert -list -v -alias androiddebugkey -keystore C:/Users/Username/.android/debug.keystore。(将用户名替换为您的用户名)。

3.输入密码为 android


小智 5

请提供debug.keystore的完整路径。示例:C:/Users/myusername/.android/debug.keystore而不是〜/ .android / debug.keystore


Lua*_* Ho 5

我从teamtreehouse论坛找到了这个指南。希望它会帮助你。

1)按Start+R并键入 cmd.exe打开命令提示符

2) 使用Windows 资源管理器,找到JDK目录所在的位置(通常是 Program Files >> Java)并复制路径。

3) 在Command Prompt 中,键入 cd 后跟 JDK bin 目录的目录。例如: cd C:\Program Files\Java\jdk1.8.0_25\bin 是我使用的命令(您的可能会有所不同)。

4) 使用 Windows 资源管理器,找到 .android 目录所在的位置(通常在用户 >> 下[YOUR WINDOWS USERNAME])并复制路径。

5)现在,使用以下命令:

keytool -exportcert -alias androiddebugkey -keystore[PATH_TO_.ANDROID_DIRECTORY] -list -v
Run Code Online (Sandbox Code Playgroud)

替换[PATH_TO_.ANDROID_DIRECTORY]为您复制的路径。请注意,您应该在 JDK 的 bin 目录中的终端/命令提示符中运行此命令(您已在第 3 步中执行此操作)。

我的是 C:\Program Files\Java\jdk1.8.0_121\bin>keytool -exportcert -alias androiddebugkey -keystore C:\Users\HoSiLuan\.android\debug.keystore -list -v

记得用 C:\Users\HoSiLuan\.android\debug.keystore而不是~/.android\debug.keystore. 输入这种缩短方式时,我仍然遇到错误。

然后应该会像往常一样提示您输入密码,您可以输入该密码(密码是 android)。之后,您将看到打印到屏幕上的证书列表。