获取Android安装包签名有2种方法。

 一、代码中获取,但是需要知道安装包的包名。

代码如下:

PackageManager manager = getPackageManager();        /** 通过包管理器获得指定包名包含签名的包信息 **/        PackageInfo packageInfo = null;        try {            packageInfo = manager.getPackageInfo("your package name", PackageManager.GET_SIGNATURES);        } catch (PackageManager.NameNotFoundException e) {            e.printStackTrace();        }        /******* 通过返回的包信息获得签名数组 *******/        Signature[] signatures = packageInfo.signatures;        String ss = MD5.hexdigest(signatures[0].toByteArray());        if(ss != null) {            Toast.makeText(this, "签名" + ss, Toast.LENGTH_LONG).show();        }else{            Toast.makeText(this,"没获得签名",Toast.LENGTH_LONG).show();        }

还需要一个MD5工具类:

public class MD5 {    private static final char[] hexDigits = { 48, 49, 50, 51, 52, 53, 54, 55,            56, 57, 97, 98, 99, 100, 101, 102 };    public static String hexdigest(String paramString) {        try {            String str = hexdigest(paramString.getBytes());            return str;        } catch (Exception localException) {        }        return null;    }    public static String hexdigest(byte[] paramArrayOfByte) {        try {            MessageDigest localMessageDigest = MessageDigest.getInstance("MD5");            localMessageDigest.update(paramArrayOfByte);            byte[] arrayOfByte = localMessageDigest.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;    }}

二、使用命令获取

cmd命令,然后进去*.jks所在的目录,输入命令行:

keytool -list -v -keystore [xxx] -keypass [xxx]
获取到的MD5值,去掉其中的“:”就是我们需要的32的签名。

更多相关文章

  1. android apk签名生成及配置
  2. 【Android】Android实现截取当前屏幕图片并保存至SDCard
  3. Android(安卓)程序获取、设置铃声和音量
  4. Android(安卓)2.2新增的DeviceAdminInfo类
  5. 通过 http post 方式上传多张图片
  6. Android(安卓)利用getIdentifier()方法获取资源ID
  7. 利用第三方jar包jaudiotagger实现与MediaMetadataRetriever类似
  8. Android(安卓)dumpstate 工具解析
  9. android 中的 Bitmap 相关

随机推荐

  1. Android(安卓)8.0 Adaptive Icon特性 for
  2. android TextView设置中文字体加粗
  3. Android(安卓)实现绚丽多彩的TextView
  4. RK3288 Android(安卓)5.1 固件 编译
  5. android 源码 来电流程 详解
  6. android vold架构详解(3)_两个Socket
  7. 【ZT】Android(安卓)Activity和Intent机
  8. Android(java)学习笔记84:自定义异常类
  9. Android解析json数据的几种方法
  10. Android(安卓)界面style