android开发在接入facebook第三方登录时需要在facebook配置信息,其中就有应用签名散列
一、散列如何生成
1、通过cmd命令生成
keytool -exportcert -alias YOU_APP_ALIAS -keystore YOUR_RELEASE_KEY_PATH | openssl sha1 -binary | openssl base64
- YOU_APP_ALIAS :应用签名文件的别名
- YOUR_RELEASE_KEY_PATH :签名文件路径
之后需要输入密码即可。
Note:但是如果你使用的是Windows电脑的话这里是没有openssl 环境的,所以需要安装openssl(linux自带openssl环境)
2、通过android代码生成
// 获取FB需要的密钥散列
private void facebookSign() {
try {
PackageInfo info = getPackageManager()
.getPackageInfo(getPackageName(), PackageManager.GET_SIGNATURES);
for (Signature signature : info.signatures) {
MessageDigest md = MessageDigest.getInstance("SHA");
md.update(signature.toByteArray());
Log.d("KeyHash:", Base64.encodeToString(md.digest(), Base64.DEFAULT));
}
} catch (NameNotFoundException e) {
Log.i(TAG, "facebook key NameNotFoundException");
} catch (NoSuchAlgorithmException e) {
Log.i(TAG, "facebook key NoSuchAlgorithmException");
}
}
KeyHash打印出的日志就是对应的散列
希望对看到的您有帮助~
网友评论