Khu*_*ram 169 java android keytool facebook-android-sdk
我希望为我的应用程序生成一个应用程序签名,稍后将与Facebook集成.在Facebook的一个教程中,我发现了这个命令:
keytool -exportcert -alias androiddebugkey -keystore ~/.android/debug.keystore | openssl sha1 -binary | openssl base64
Run Code Online (Sandbox Code Playgroud)
在本教程中,它表示通过运行此cmd,我的生成签名的过程将开始.
但是,此命令会出错:
openssl is not recognized as an internal or external command
Run Code Online (Sandbox Code Playgroud)
我怎么能摆脱这个?
Usa*_*war 380
嗯,在openssl的地方...你必须实际放置你下载的openssl文件夹的路径.您的实际命令应如下所示:
keytool -exportcert -alias androiddebugkey -keystore ~/.android/debug.keystore | "C:\Users\abc\openssl\bin\openssl.exe" sha1 -binary | "C:\Users\abc\openssl\bin\openssl.exe" base64
Run Code Online (Sandbox Code Playgroud)
请记住,您将输入的路径将是您安装openssl的路径...希望这有助于.. :-)
编辑:
你可以从下面的相应链接下载openssl for windows 32和64 bit:
Kal*_*ski 22
使用整个路径,如下所示:
exportcert -alias androiddebugkey -keystore ~/.android
/debug.keystore | "C:\openssl\bin\openssl.exe" sha1 -binary | "C:\openssl\bin\op
enssl.exe" base64
Run Code Online (Sandbox Code Playgroud)
它对我有用.
小智 18
请按照以下步骤操作,希望您的密钥正常工作:
步骤1您将需要OpenSSL.您可以从Google Code上的openssl-for-windows项目下载二进制文件.
步骤2解压缩文件夹,然后将文件夹的路径复制bin
到剪贴板.
例如,如果文件解压缩到该位置C:\Users\gaurav\openssl-0.9.8k_WIN32
,则复制路径C:\Users\gaurav\openssl-0.9.8k_WIN32\bin
.
步骤3将路径添加到系统环境路径.PATH
设置环境变量后,打开cmd并键入以下命令:
C:\>keytool -exportcert -alias androiddebugkey -keystore [path to debug.keystore] | openssl sha1 -binary | openssl base64
Run Code Online (Sandbox Code Playgroud)
出现提示时键入密码.如果该命令有效,那么您将看到一个键.
Sid*_*kar 11
这对我来说很成功.
"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
小心以下路径:
如果命令成功运行,那么您将看到以下命令:
输入密钥库密码:typeyourpassword
Encryptedhashkey**
Sag*_*ada 10
这是迟到的答案,但它会帮助像我这样的懒人..将此代码添加到您的Application类,无需下载openssl,也无需设置路径..只需要复制此代码..而keyHash将在日志中生成.
import com.facebook.FacebookSdk;
public class MyApplication extends Application {
@Override
public void onCreate() {
super.onCreate();
FacebookSdk.sdkInitialize(getApplicationContext());
AppEventsLogger.activateApp(this);
printKeyHash();
}
private void printKeyHash() {
try {
PackageInfo info = getPackageManager().getPackageInfo(
getPackageName(), PackageManager.GET_SIGNATURES);
for (Signature signature : info.signatures) {
MessageDigest md = MessageDigest.getInstance("SHA");
md.update(signature.toByteArray());
Log.i("KeyHash:",
Base64.encodeToString(md.digest(), Base64.DEFAULT));
}
} catch (PackageManager.NameNotFoundException e) {
Log.e("jk", "Exception(NameNotFoundException) : " + e);
} catch (NoSuchAlgorithmException e) {
Log.e("mkm", "Exception(NoSuchAlgorithmException) : " + e);
}
}
}
Run Code Online (Sandbox Code Playgroud)
并且不要忘记在清单中添加MyApplication类:
<application
android:name=".MyApplication"
</application>
Run Code Online (Sandbox Code Playgroud)
如果您使用的是 Windows 并且安装了 git,那么您可以使用 GIT Bash 运行 open ssl 命令。
转到您要存储密钥的目录
右键单击并打开 GIT Bash
在这里您可以运行任何 openssl 命令。例如
openssl enc -aes-128-cbc -k test -P -md sha1
小智 6
首先导航到cmd cd c:\ Program Files(x86)\ Java\jre7\bin中的Java/jre/bin文件夹
然后使用:[将debug.keystore路径更改为系统上的正确位置]安装openssl(对于Windows 32或64,根据您的需要在c:\ openssl)
keytool -exportcert -alias androiddebugkey -keystore "C:\Users\vibhor\.android\debug.keystore" | "c:\openssl\bin\openssl.exe" sha1 -binary | "c:\openssl\bin\openssl.exe" base64
Run Code Online (Sandbox Code Playgroud)
所以整个命令是这样的:[提示在执行时输入密钥库密码]
c:\Program Files (x86)\Java\jre7\bin>keytool -exportcert -alias androiddebugkey
-keystore "C:\Users\vibhor\.android\debug.keystore" | "c:\openssl\bin\openssl.ex
e" sha1 -binary | "c:\openssl\bin\openssl.exe" base64
Enter keystore password:
Run Code Online (Sandbox Code Playgroud)
Steps to create Hash Key.
1: Download openssl from Openssl for Windows . I downloaded the Win64 version
2:Unzip and copy all the files in the bin folder including openssl.exe(All file of bin folder)
3:Goto to the folder where you installed JDK for me it’s C:\Program Files\Java\jdk1.8.0_05\bin
4:Paste all the files you copied from Openssl’s bin folder to the Jdk folder.
Run Code Online (Sandbox Code Playgroud)
然后转到C:\ Program Files \ Java \ jdk1.8.0_05 \ bin并按Shift键并右键单击并打开cmd
C:\Program Files\Java\jdk1.8.0_05\bin>//cmd path
Run Code Online (Sandbox Code Playgroud)
Sha1过去通过此
密钥工具-exportcert -alias androiddebugkey -keystore“ C:\ User \ ABC \ .android.keystore” | openssl sha1 -binary | openssl base64
//和ABC是系统名称,并放入自己的系统名称
归档时间: |
|
查看次数: |
150145 次 |
最近记录: |