当我使用命令时:

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

我得到这个错误:

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

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

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

任何帮助吗?


当前回答

这仅仅意味着keytool关键字没有安装到系统中 访问:请访问此处并下载java JDK。

然后在环境变量中设置java JDK。

其他回答

如果您使用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。

在我的情况下,问题是在使用PowerShell而不是CMD:)

我遭受了很多试图找到一个解决方案,最后我找到了解决方案,首先通过导航到系统变量设置jre路径:

control panel > System and Security > System > Advanced system settings 

在“系统变量”下单击新建

Variable name: KEY_PATH
Variable value: C:\Program Files (x86)\Java\jre1.8.0_171\bin

变量值应该是JDK bin文件夹的路径。

然后打开命令提示符并更改目录到相同的JDK的bin文件夹,如下所示

C:\Program Files (x86)\Java\jre1.8.0_171\bin 

然后在CMD中复制并粘贴下面的代码

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

一个简单的错误解决方案是,首先需要在命令提示符中更改文件夹目录。默认在命令提示符或终端(在底部的Android studio内部)选项卡中 路径设置为 C:\Users#您选择的PC的名称\AndroidStudioProjects#应用程序名称\flutter_app> 相应的变化: C:\Users#您选择的PC的名称\AndroidStudioProjects#应用程序名称\flutter_app>cd\

输入**cd**(#在flutter_app>之后),只输入cd\而不是逗号

然后输入cd Program Files\Java\jre1.8.0_251\bin(#记得正确检查jre文件名)

现在输入keytool -list -v -keystore "%USERPROFILE%.android\debug。Keystore " -alias androiddebugkey -storepass android -keypass android(不带任何空格)。

要运行的代码的截图

这对我很管用!!:

转到这个路径或任何你有keytool.exe文件的地方

C:\Program Files\Java\jre7\bin

按住shift并右键单击->,然后在这里按打开命令窗口

终端将弹出,粘贴这个:

keytool -list -v -keystore "C:\Users\"Your-User-Name(no quotes)"\.android\debug.keystore" -alias androiddebugkey -storepass android -keypass android

给你MD5和SHA1