我正在这里阅读Facebook开发者的开发指南
它说,我必须使用keytool导出签名为我的应用程序,如:
keytool -exportcert -alias androiddebugkey -keystore ~/.android/debug.keystore | openssl sha1 -binary | openssl base64
我不知道如何找到关键工具,以运行它。我试图打开Windows命令提示符并粘贴上述命令,但它不起作用。
我正在这里阅读Facebook开发者的开发指南
它说,我必须使用keytool导出签名为我的应用程序,如:
keytool -exportcert -alias androiddebugkey -keystore ~/.android/debug.keystore | openssl sha1 -binary | openssl base64
我不知道如何找到关键工具,以运行它。我试图打开Windows命令提示符并粘贴上述命令,但它不起作用。
当前回答
只需在Windows命令提示符中输入这些。
cd C:\Program Files\Java\jdk1.7.0_09\bin
keytool -exportcert -alias androiddebugkey -keystore "C:\Users\userName\.android\debug.keystore" -list -v
基本密码为android
您将看到MD5、SHA1和SHA256密钥;选择一个你需要的。
其他回答
JDK自带keytool。如果您正在使用cygwin,那么这可能已经在您的路径上了。否则,您可能会在JDK的bin文件夹中查找。
为了使shell管道(|)正常工作,您可能需要使用cygwin。
在我的例子中,我已经使用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:…
希望这能帮助到一些人!
Robby Pond的回答可以概括为使用JAVA_HOME环境变量,并补偿路径中可能出现的任何空白(如Program Files):
"%JAVA_HOME%\bin\keytool" -exportcert -alias androiddebugkey -keystore ~/.android/debug.keystore | openssl sha1 -binary | openssl base64
Android:在Android中执行keytool命令的位置
如果在classpath变量中设置了JRE,则可以在dos命令提示符下运行Keytool命令。
例如,如果您想获取android SDK调试证书的MD5指纹,
只需运行以下命令…
C:\Documents and Settings\user\.android> keytool -list -alias androiddebugkey -keystore debug.keystore -storepass android -keypass android
C:\Documents and Settings\user\.Android >是包含调试的路径。必须经过认证的密钥存储库。
详情请访问http://code.google.com/android/add-ons/google-apis/mapkey.html#getdebugfingerprint
在cmd窗口(需要以管理员身份运行),
cd %JAVA_HOME%
只有在设置了系统环境变量JAVA_HOME后才有效。要为路径设置系统变量,可以这样做
setx %JAVA_HOME% C:\Java\jdk1.8.0_121\
然后你就可以打字了
cd c:\Java\jdk1.8.0_121\bin
or
cd %JAVA_HOME%\bin
然后,执行JAVA jdk提供的任何命令,例如
keytool -genkey -v -keystore myapp.keystore -alias myapp
你只需要按回车键后回答问题(相当于在cmd行上输入值)!密钥将被生成