美文网首页
Facebook KeyHash生成方法

Facebook KeyHash生成方法

作者: 所幸时光未苍凉 | 来源:发表于2019-05-30 16:32 被阅读0次

    准备工作

    1.去https://code.google.com/p/openssl-for-windows/downloads/list下载OpenSSL工具
    2.在C盘根目录下新建一个openssl的文件夹,并将OpenSSL压缩包解压到此文件夹中
    3.找到debug.keystore文件复制粘贴到Java JDK的bin目录下(C:\Program Files\Java\jdk1.8.0_211\bin)
    4.找到自己的签名文件(debug.keystore),将其复制粘贴到Java JDK的bin目录下(C:\Program Files\Java\jdk1.8.0_211\bin)

    准备工作完毕后

    1. 打开CMD ,路径设置到JavaJDK 的bin路径下,执行以下代码:
    keytool -exportcert -alias debug -keystore debug.keystore > c:\openssl\bin\debug.txt
    

    密码是:android (执行完后在 C盘的openssl文件夹下生成了debug.txt文件)

    2.打开CMD,路径设置到openssl文件夹下的bin目录(C:\openssl\bin)执行以下代码:

    openssl sha1 -binary debug.txt >debug_sha.txt
    
    1. 继续执行以下代码:
    openssl base64 -in debug_sha.txt >debug_base64.txt
    

    执行完后在C盘的openssl文件夹下生成了debug_base64.txt文件

    4.打开debug_base64.txt即可得到KeyHash

    附:另外一种更直接简单的方法
    将key拷贝到jdk的bin目录下,然后打开CMD ,路径设置到JavaJDK的bin目录下,然后执行以下命令:
    //得到hashkey
    keytool -exportcert -alias debug -keystore debug.keystore | openssl sha1 -binary | openssl base64
    //得到 MD5、SHA1、SHA256
    keytool -list -v -keystore debug.jks
    

    通过代码来获取​:

     try {
                PackageInfo info = this.getPackageManager().getPackageInfo(this.getPackageName(), PackageManager.GET_SIGNATURES);
                for (Signature signature : info.signatures) {
                    MessageDigest md = MessageDigest.getInstance("SHA");
                    md.update(signature.toByteArray());
                    String KeyHash = Base64.encodeToString(md.digest(), Base64.DEFAULT);
                    Log.d("KeyHash:", "KeyHash:" + KeyHash);//两次获取的不一样  此处取第一个的值
                    //           Toast.makeText(this, "FaceBook HashKey:"+KeyHash, Toast.LENGTH_SHORT).show();
                }
            } catch (PackageManager.NameNotFoundException e) {
            } catch (NoSuchAlgorithmException e) {
            }
    

    注:此方法要用签名的包,如果未签名会返回一个假的keyHash

    相关文章

      网友评论

          本文标题:Facebook KeyHash生成方法

          本文链接:https://www.haomeiwen.com/subject/aryvtctx.html