您的位置:首页 > 移动开发 > Android开发

]获取android应用的MD5签名

2015-07-16 19:48 411 查看
分享一个获取android应用的md5签名的方法,代码有不足或者有错误的地方,还希望各位看官多多提出你们的宝贵意见,在此先行谢过。废话不多说,上代码,上方法。

public class SignatureUtils {

    private static final char[] hexDigits = {48, 49, 50, 51, 52, 53, 54, 55,

            56, 57, 97, 98, 99, 100, 101, 102};

    public static String getSignature(Context ctx) {

        try {

            PackageInfo packageInfo = ctx.getPackageManager().getPackageInfo(ctx.getPackageName(), PackageManager.GET_SIGNATURES);

            Signature[] signatures = packageInfo.signatures;

            Signature signature = signatures[0];

            return hexdigest(signature.toByteArray());

        } catch (PackageManager.NameNotFoundException e) {

            e.printStackTrace();

            return null;

        }

    }

    private static String hexdigest(byte[] paramArrayOfByte) {

        try {

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

            messageDigest.update(paramArrayOfByte);

            byte[] arrayOfByte = messageDigest.digest();

            char[] arrayOfChar = new char[32];

            int i = 0;

            int j = 0;

            while (true) {

                if (i >= 16)

                    return new String(arrayOfChar);

                int k = arrayOfByte[i];

                int m = j + 1;

                arrayOfChar[j] = hexDigits[(0xF & k >>> 4)];

                j = m + 1;

                arrayOfChar[m] = hexDigits[(k & 0xF)];

                i++;

            }

        } catch (Exception localException) {

        }

        return null;

    }

}

复制代码
应用内测托管  pre.im
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: