我在这里阅读Facebook开发人员的开发指南
它说我必须使用keytool导出我的应用程序的签名,例如:
keytool -exportcert -alias androiddebugkey -keystore ~/.android/debug.keystore | openssl sha1 -binary | openssl base64
我不知道如何找到要运行的keytool。我试图打开Windows命令提示符并粘贴上面的命令,但没有成功。
我在这里阅读Facebook开发人员的开发指南
它说我必须使用keytool导出我的应用程序的签名,例如:
keytool -exportcert -alias androiddebugkey -keystore ~/.android/debug.keystore | openssl sha1 -binary | openssl base64
我不知道如何找到要运行的keytool。我试图打开Windows命令提示符并粘贴上面的命令,但没有成功。
Answers:
我自己找到了一个解决方案,如下所示。它工作正常。
"C:\Program Files\Java\jdk1.6.0_26\bin\keytool.exe" -exportcert -alias
> sociallisting -keystore "D:\keystore\SocialListing" |
> "C:\cygwin\bin\openssl.exe" sha1 -binary | "C:\cygwin\bin\openssl.exe"
> base64
只需将它们输入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
键; 选择您需要的那个。
keytool error: java.lang.Exception: Only one command is allowed: both -exportcert and -list were specified.
要获取android键哈希码,请按照以下步骤操作(适用于Facebook应用)
cd C:\Program Files\Java\jdk1.6.0_26\bin
keytool -export -alias myAlias -keystore C:\Users\<your user name>\.android\myKeyStore | C:\openssl-0.9.8k_WIN32\bin\openssl sha1 -binary | C:\openssl-0.9.8k_WIN32\bin\openssl enc -a -e
要获取证书指纹(MD5)代码,请按照以下步骤操作
jarsigner.exe
文件cd C:\Program Files\Java\jdk1.6.0_26\bin
keytool -list -keystore "C:/Documents and Settings/<your user name>/.android/debug.keystore"
android
”,然后输入在cmd窗口(需要以管理员身份运行)上,
cd %JAVA_HOME%
仅在设置了系统环境变量JAVA_HOME的情况下有效。要为您的路径设置系统变量,您可以执行此操作
setx %JAVA_HOME% C:\Java\jdk1.8.0_121\
然后,您可以输入
cd c:\Java\jdk1.8.0_121\bin
要么
cd %JAVA_HOME%\bin
然后,执行JAVA jdk提供的任何命令,例如
keytool -genkey -v -keystore myapp.keystore -alias myapp
您只需按Enter键即可回答问题(等同于在cmd行中键入值)!密钥将生成
Android:在Android的哪里运行keytool命令
如果在类路径变量中设置了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>
包含debug.keystore
必须经过认证的的路径在哪里?
有关详细信息,请访问http://code.google.com/android/add-ons/google-apis/mapkey.html#getdebugfingerprint
我在另一篇文章中发现了这一点,该文章并没有获得多少支持,但是对我来说非常有帮助。因此将其添加到此处。
Android Studio将附带一个keytool。
C:\Program Files\Android\Android Studio\jre\bin
您可以在下面查看Richar Heap的他的文章,并提供有用的参考。我以前确实看到过,但忘记了。https://stackoverflow.com/a/51524526/4446406
keytool
JDK随附。如果您正在使用cygwin,则可能已经在您的路径上了。否则,您可能会在JDK的bin文件夹中四处浏览。
无论如何,您可能都需要使用cygwin才能使外壳管道(|
)工作。
在遇到相同问题时,几乎没有观察到(Windows)。1.壳管很重要。2.如果您使用的是OpenSSL或Cygwin,则一定要安装它。3. JDK附带了keytool,因此您必须在命令中指向它,或者将cd放入exe所在的JDK / bin文件夹中。4.调试密钥库通常位于〜/ .android / debug.keystore中。 5.密码是“ android”,无论您是-keypass还是在提示时键入。6.对于别名,您可以使用任何编辑器打开(请勿保存,只需打开和关闭)密钥库文件并读取它。7.最重要-在引号内和不引号之间指定密钥库路径是不同的。我通过使用双引号内的密钥库路径来使其工作。正如remix090378所说并按照说明,此命令确实有效-cd C:\ Program Files \ Java \ jdk1.7.0_09 \ bin
keytool -exportcert-别名androiddebugkey -keystore“ C:\ Users \ userName.android \ debug.keystore”-列表-v
就我而言,我已经使用命令生成了一个APK文件ionic cordova build android --prod
,我需要获取现有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:...
希望这对某人有帮助!
假设您已经在系统中安装了Java,并且最好安装了JDK(回答Windows,因为您在问题中提到了它),则应该在安装bin
文件夹中具有keytool实用程序。
在这种情况下,下一步是将该bin文件夹添加到PATH
Windows安装的环境变量中。
下次打开Windows Shell并键入时,keytool
您将能够运行实际的实用程序。
/usr/local/java/bin# ./keytool
如果您正在运行Windowsfind the JDK install path and check bin folder