在接入FaceBook 安卓第三方登录的时候,就需要获取Debug Android Hash Key。
Android Hah Key有两种,即开发密钥散列和发布密钥散列
获得散列值需要借助openssl工具。
下载并配置openssl
1、下载
到https://code.google.com/archive/p/openssl-for-windows/downloads?authuser=1下载openssl-0.9.8e_X64.zip ,解压。
2、配置openssl环境变量
- 系统环境变量Path中新建 C:\openssl-0.9.8e_X64\bin
- 新建系统环境变量OPENSSL_CONF,值为openssl.cnf的路径,我的为C:\openssl-0.9.8e_X64\openssl.cnf
下图为成功
3、配置jdk
由于需要使用keytool命令,故需要jdk环境。参见Win10环境下JDK8下载安装以及环境变量配置
4、生成Key Hash
cmd cd到keytool所在目录输入以下命令:
keytool -exportcert -alias keystore文件别名 -keystore keyStore文件全路径 | openssl sha1 -binary | openssl base64
例如:文件名:user.keystore 文件夹:D:\Unity2021Project\ZooGame\Keystore\user.keystore
keytool -exportcert -alias user -keystore D:\Unity2021Project\ZooGame\Keystore\user.keystore | openssl sha1 -binary | openssl base64
输入密钥库口令后,回车,可获得28位字符,即为目标散列。
补充一下默认debug.keystore的信息
默认debug.keystore的信息如下:
Keystore name: “debug.keystore”
Keystore password: “android”
Key alias: “androiddebugkey”
Key password: “android”
CN: “CN=Android Debug,O=Android,C=US”
GooglePlay商店应用的keyhash值获取
由于GP会对应用进行重签名,当应用接了Facebook SDK后,一开始配置的key hash值和上架后的就不一致。因此可以先下载证书(GP后台:设置–>应用完整性->应用签名页),下载的证书是.der格式,默认名字为deployment_cert.der,可以使用如下命令获得其key hash值:
openssl sha1 -binary 证书全路径名 | openssl base64