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

Android中如何通过代码的方式获取APP的SHA1值.

2017-07-21 13:59 645 查看
1.直接调用这个方法即可,传入一个上下文.

public static String getSha1(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;  

}  
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  android sha1
相关文章推荐