获取unity安卓包的证书

工具:Unity、AndroidStudio、

1.创建keystore,亲测用androidstudio创建新的keystore别名规则问题(应该是全部小写才可以),始终无法创建,换成unity的keystore直接创建新的

上一步骤中在androidstduio 创建签名的时候,其实不是创建失败,根据提示还需要用keytool转一道。创建的签名格式有两种格式,一种是keystore,一种是jks,两者的算法稍有区别,在不同的平台会需要不同的签名,两者之间可以通过工具互转。

  • Key Hash值,获取方式如下:
  • 通过代码的方式获取
private void facebookHashKey() {

PackageInfo info = null;

try {

info = getPackageManager().getPackageInfo("com.hg.truckvsfire", 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 (PackageManager.NameNotFoundException e) {

e.printStackTrace();

} catch (NoSuchAlgorithmException e) {

e.printStackTrace();

}

}

在代码中调用这个方法,注意需要修改包名,在日志中,通过KeyHash过滤,即可得到facebook的keyhash值。

  • 通过代码的方式获取SHA1值
public static String SHA1(Context context) {

try {

PackageInfo info = context.getPackageManager().getPackageInfo(

context.getPackageName(), PackageManager.GET_SIGNATURES);

byte[] cert = info.signatures[0].toByteArray();

MessageDigest md = MessageDigest.getInstance("SHA1");

byte[] publicKey = md.digest(cert);

StringBuffer hexString = new StringBuffer();

for (int i = 0; i < publicKey.length; i++) {

String appendString = Integer.toHexString(0xFF & publicKey[i])

.toUpperCase(Locale.US);

if (appendString.length() == 1)

hexString.append("0");

hexString.append(appendString);

hexString.append(":");

}

String result = hexString.toString();

return result.substring(0, result.length()-1);

} catch (Exception e) {

e.printStackTrace();

}

return null;

}

注意,需要打release包,并输出这个日志才行,debug包与release包的SHA1值不一样。

  • 通过keytool命令获取签名指纹
  1. cd到jks的上一级目录,如:D:\project\android\SignFile\colorballs
  2. 在cmd中输入这个命令 keytool -list -keystore colorballs.jks jks对应jks的名字
  3. 输入秘钥库口令中输入 密码
  4. 得到sha1
  5. 输入这个命令 keytool -exportcert -alias colorballs -keystore colorballs.jks | openssl sha1 -binary | openssl base64
  6. 输入密码 得到facebook的key hash

其中 -alias后面是签名文件的别名,-keystore 后面是签名文件的签名,这个需要根据项目来改变

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值