获取手机签名

  //获得手机上所有应用签名及其MD5码值
        //1 获得包管理者对象
       PackageManager pm = getPackageManager();
        // 2 获取所有(已安装)应用签名文件  第二个为卸载了的应用残余文件安装包信息签名
      ListpackageInfos= pm.getInstalledPackages(PackageManager.GET_SIGNATURES+PackageManager.GET_UNINSTALLED_PACKAGES);
      // 3 遍历集合取数据
        for(PackageInfo packageInfo: packageInfos){
          Signature[] signatures= packageInfo.signatures;// 返回签名数组
          Signature  sig=signatures[0];
          String string=  sig.toCharsString();//此处toString直接输出@XXX不符合故不用他
        }


注 此操作一般耗时 放在子线程比较方便 直接在线程中进行此操作


此操作可能会用到

 try {
            // 随机睡眠操作
            Thread.sleep(50+new Random().nextInt(100));
        } catch (InterruptedException e) {
            e.printStackTrace();
        }

你可能感兴趣的:(获取手机签名)