我正在这里阅读Facebook开发者的开发指南

它说,我必须使用keytool导出签名为我的应用程序,如:

keytool -exportcert -alias androiddebugkey -keystore ~/.android/debug.keystore | openssl sha1 -binary | openssl base64

我不知道如何找到关键工具,以运行它。我试图打开Windows命令提示符并粘贴上述命令,但它不起作用。


当前回答

Robby Pond的回答可以概括为使用JAVA_HOME环境变量,并补偿路径中可能出现的任何空白(如Program Files):

"%JAVA_HOME%\bin\keytool" -exportcert -alias androiddebugkey -keystore ~/.android/debug.keystore | openssl sha1 -binary | openssl base64

其他回答

keytool位于JDK的bin目录下($JAVA_HOME/bin)。JAVA_HOME是JDK安装目录。 要使用该命令行,还应该在PATH环境变量中包含$JAVA_HOME/bin。

如果你安装了带有Xamarin/移动开发支持的visual studio,你将在这里安装java C:\Program Files\Android\jdk\ microsoft_dist_openjdk_{version}\bin\,就像我的情况一样。

考虑添加PATH作为环境变量,并通过cmd访问它。

PATH作为值,C:\Program Files\Java\ jre1.8.0_331\bin作为变量,并通过keytool访问它…

#进入cacerts或jsk所在路径,打开并在cmd下运行以下命令

Keytool -v -list -keystore cacerts

Keytool -v -list -keystore .jks

在我的例子中,我已经使用ionic cordova build android——prod命令生成了一个APK文件,我需要为已经存在的APK文件获取SHA-1指纹。下面是我如何通过在App目录中运行以下命令来获得它:

Keytool -list -printcert -jarfile app-debug.apk

所以,我基本上在以下应用程序位置运行上述命令:

C:\myApp\platforms\android\app\build\outputs\apk\debug>keytool -list -printcert -jarfile app-debug.apk

这给了我SHA1指纹为:7B:6B:AD:…

希望这能帮助到一些人!