版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/Daxue_haha/article/details/82379726
安卓-几种查看SHA1和MD5的方法
1、获取apk的sha1和md5
为了避免注册时弄错签名,建议直接用打包出来的apk查看签名,具体如下:
1) 将apk修改后缀为 .rar文件后解压;
2) 进入解压后的META-INF目录,该目录下会存在文件CERT.RSA
3) 在该目录下打开cmd,输入命令 :keytool -printcert -file CERT.RSA
2、代码中获取
publicstatic 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 (NameNotFoundException e) {
e.printStackTrace();
} catch (NoSuchAlgorithmException e) {
e.printStackTrace();
}
return null;
3、使用签名文件获取
1)打开cmd命令,进入keytool.exe目录,一般在 D:\Program Files\Java\jdk1.8.0_181\bin中
2)输入命令:keytool -list -keystore “(jks的目录)app.keystore(jks)”
3)输入密钥库口令,是指输入之前生成keystore文件时设置的密码,输入后默认为不显示的,输入完成后直接回车就可以。
记录一下