admin管理员组文章数量:1604661
由于google play 推荐 发布签名证书(App签名证书)用google play后台生成的,而google play 后台生成我们可以看到的,直接是 签名证书(签名证书可以下载),而无法拿到google后台生成的 .keystore 文件,而facebook 获取 keyhash 官方给出了两个方法:
方法一:
private void facebookHashKey() {
try {
PackageInfo info = getPackageManager().getPackageInfo("your.package.name", 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) {
} catch (NoSuchAlgorithmException e) {
}
}
方法二:
电脑上配置好openssl 环境 的前提下 执行命令
keytool -exportcert -alias androiddebugkey -keystore debug.keystore | openssl sha1 -binary | openssl base64
无论方法一还是方法二都需要有 .keystore(或.jks) 文件的前提下才可获取,而使用 google play 后台生成的签名证书是拿不到 .keystore(或.jks) 文件,只能下载 .der文件的证书,所以无法通过Facebook官方给出的方法获取到 keyhash。
能不能通过 .der文件证书来生成 keyhash值能?答案: 能
方法如下:
电脑上配置好openssl 环境 的前提下 执行命令
openssl sha1 -binary deployment_cert.der | openssl base64
说明:deployment_cert.der 为从google play 后台下载的 google play 用于发布的签名证书
版权声明:本文标题:Facebook keyhash 获取方法总结(含 通过google play后台下载的 .der证书获取 keyhash) 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://www.elefans.com/dianzi/1728464638a1159312.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论