android 获取签名的md5值,获取Android MD5签名

本文介绍了两种在Android中获取应用签名MD5值的方法:一种是通过Android Studio的Gradle工具,另一种是通过代码实现。在使用Gradle工具获取的MD5值中,需要替换冒号并转为小写;代码实现部分包括获取PackageInfo和使用MessageDigest进行MD5转换。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

方法1 AS Gradle工具

参考 Android Studio生成签名文件,自动签名,以及获取SHA1和MD5值 签名生成和获取 十分详细,不在叙述,

需要说明的是 : 获取的 MD5值 如:42:41:3B:BB:86:44:92:22:D0:4D:2A:E6:7F:98:4E:EE

替换“ :” ,转换成小写 ,就是应用的 MD5值 ,其它亦然

方法2 代码方式

不是我写的 ,记录一下

Activity 方法中

try { //BuildConfig.APPLICATION_ID 当前应用包名

PackageInfo packageInfo = getPackageManager().getPackageInfo(BuildConfig.APPLICATION_ID,

PackageManager.GET_SIGNATURES);

String signValidString = getSignValidString(packageInfo.signatures[0].toByteArray());

Log.e("获取应用签名", BuildConfig.APPLICATION_ID + ":" + signValidString);

} catch (Exception e) {

Log.e("获取应用签名", "异常:" + e);

}

其 引用 的方法

private String getSignValidString(byte[] paramArrayOfByte) throws NoSuchAlgorithmException {

MessageDigest localMessageDigest = MessageDigest.getInstance("MD5");

localMessageDigest.update(paramArrayOfByte);

return toHexString(localMessageDigest.digest());

}

public String toHexString(byte[] paramArrayOfByte) {

if (paramArrayOfByte == null) {

return null;

}

StringBuilder localStringBuilder = new StringBuilder(2 * paramArrayOfByte.length);

for (int i = 0; ; i++) {

if (i >= paramArrayOfByte.length) {

return localStringBuilder.toString();

}

String str = Integer.toString(0xFF & paramArrayOfByte[i], 16);

if (str.length() == 1) {

str = "0" + str;

}

localStringBuilder.append(str);

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值