Android 获取应用 MD5 SHA1 SHA256 签名信息 - 蓝蓝设计_UI设计公司

帝皇彩票官网

Android 获取应用 MD5 SHA1 SHA256 签名信息

2020-2-9 释然 前端及开发文章及欣赏

闲着没事儿写了个小 demo ,获取手机上已安装应用信息,系统应用和 非系统应用
MD5 SHA1 SHA256 签名信息 点击签名信息可复制到剪切板,
GitHub:https://github.com/sunan-n/GetAppInfo
如下图:



```java
主要就是这个方法,传参数进来获取相应的签名类型 信息
    public static String getSignaturesInfo(Context context, String packageName, String tpye) {
//        //获取包管理器
        PackageManager pm = context.getPackageManager();
        //返回包括在包中的签名信息
        int flags = PackageManager.GET_SIGNATURES;
        PackageInfo packageInfo = null;
        try {
            //获得包的所有内容信息类
            packageInfo = pm.getPackageInfo(packageName, flags);
        } catch (PackageManager.NameNotFoundException e) {
            e.printStackTrace();
        }
        //签名信息
        Signature[] signatures = packageInfo.signatures;
        byte[] cert = signatures[0].toByteArray();
        //将签名转换为字节数组流
        InputStream input = new ByteArrayInputStream(cert);
        //证书工厂类,这个类实现了出厂合格证算法的功能
        CertificateFactory cf = null;
        try {
            cf = CertificateFactory.getInstance("X509");
        } catch (CertificateException e) {
            e.printStackTrace();
        }
        //X509证书,X.509是一种非常通用的证书格式
        X509Certificate c = null;
        try {
            c = (X509Certificate) cf.generateCertificate(input);
        } catch (CertificateException e) {
            e.printStackTrace();
        }
        String hexString = null;
        try {
            //加密算法的类,这里的参数可以使MD4,MD5等加密算法
//            MessageDigest md = MessageDigest.getInstance("SHA1");
            MessageDigest md = MessageDigest.getInstance(tpye);
            //获得公钥
            byte[] publicKey = md.digest(c.getEncoded());
            //字节到十六进制的格式转换
            hexString = byte2HexFormatted(publicKey);
        } catch (NoSuchAlgorithmException e1) {
            e1.printStackTrace();
        } catch (CertificateEncodingException e) {
            e.printStackTrace();
        }
        return hexString;
    }

标签: android 获取应用 MD5 SHA1 SHA256 签名信息

Powered by sitemap
河北快3 吉利彩票投注 吉利彩票投注 吉利彩票计划 吉利彩票登陆 状元彩票官网 桔子彩票登陆 江西快3 博发彩票登陆 吉林快3