当我使用命令时:

C:\>keytool -list -alias androiddebugkey 
            -keystore .android\debug.keystore 
            -storepass android -keypass android

我得到这个错误:

'keytool'不能被识别为内部或外部命令、可操作程序或批处理文件。

我无法在计算机上获得证书指纹(MD5)。

我已经确保密钥存储库文件位于适当的位置。

任何帮助吗?


当前回答

keytool命令可能不在你的路径中——它是Java的一部分,是作为Android Studio的一部分安装的。对于具体路径,运行flutter doctor -v并找到打印在' Java binary at: '之后的路径。然后使用完全限定的路径,用keytool替换java(在最后)。如果路径包含空格分隔的名称,例如Program Files,则使用适合平台的符号表示这些名称。例如,在Mac/Linux上使用程序\文件,在Windows上使用“程序文件”。

其他回答

在java安装文件夹中找到你的keytool.exe

我的是 C:\Program Files\Java\ jre1.8.0_181\bin在任何地方打开cmd并运行

SET PATH=%PATH%;C:\Program Files\Java\jre1.8.0_181\bin;

将路径更改为keytool.exe所在的路径

检查keytool可执行文件所在的目录是否在您的%PATH%环境变量上。

例如,在我的Windows 7电脑上,它就在 C:\Program Files (x86)\Java\jre6\bin;C:\WINDOWS\System32\WindowsPowerShell\v1.0\(和许多其他条目)

如果您使用flutter并下载了openssl-for-windows:

打开命令提示符 输入颤振医生-v 在Android工具链下,你会看到Java二进制文件:C:\Program Files\Android\jre\bin\java 现在复制这行代码并执行cd C:\Program Files\Android\jre\bin 输入keytool -exportcert -alias androiddebugkey -keystore "C:\Users\Username\.android\debug. keystore "base64 . keystore" | " openssl.exe的路径" sha1 -binary | " openssl.exe的路径

(需要双引号)

Enter keystore password: android(默认密码)

这将给你Key Hash。

打开“环境变量”(你可以在Win10的开始菜单搜索中找到它) 仔细检查JDK所在的路径,以确保它存在。 对我来说,它说“…jdk1.8/bin” 但当我把它复制到Windows资源管理器或命令提示符时,它说它不存在。 我检查了它应该在哪里,它说“jdk1.8.0_77”

一个简单的重命名设置在Android工作室和keytool是工作!

进入“C:->Program Files->Java->jdk->bin”。这里有keytool.exe文件。 2.复制路径到bin。 3.转到:控制面板\系统和安全\系统 4.单击“高级系统设置” 5.单击环境变量 6.在系统变量(下半部分)下:双击变量:路径 B.添加路径:(点击新建然后添加) C:\Program Files\Java\ jdk1.8.0_191 \ bin (你的路径) 8.验证: 打开命令提示符并输入“Keytool” 它应该显示keytool细节和没有错误mssg。