当前位置:   article > 正文

android 系统签名应用获取SHA1值_java 查询apk的sha1

java 查询apk的sha1

获取系统签名sha1值两种方法:

方法一解压apk通过cmd(命令行获取):

1、系统签名apk文件,解压(重命名为rar文件)

2、取出META_INFO中CERT.RSA文件。

3、cmd下执行keytool -printcert -file CERT.RSA路径。

4、将sha1值添加到高德key中,可以为发布sha1,讲studio的sha1更改为调试sha1.

编译、签名、安装、定位,可以实现定位了。

方法二通过java代码获取:

  1. public static String sHA1(Context context) {
  2. try {
  3. PackageInfo info = context.getPackageManager().getPackageInfo(
  4. context.getPackageName(), PackageManager.GET_SIGNATURES);
  5. byte[] cert = info.signatures[0].toByteArray();
  6. MessageDigest md = MessageDigest.getInstance("SHA1");
  7. byte[] publicKey = md.digest(cert);
  8. StringBuffer hexString = new StringBuffer();
  9. for (int i = 0; i < publicKey.length; i++) {
  10. String appendString = Integer.toHexString(0xFF & publicKey[i])
  11. .toUpperCase(Locale.US);
  12. if (appendString.length() == 1)
  13. hexString.append("0");
  14. hexString.append(appendString);
  15. hexString.append(":");
  16. }
  17. String result = hexString.toString();
  18. return result.substring(0, result.length() - 1);
  19. } catch (PackageManager.NameNotFoundException e) {
  20. e.printStackTrace();
  21. } catch (NoSuchAlgorithmException e) {
  22. e.printStackTrace();
  23. }
  24. return null;
  25. }

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/花生_TL007/article/detail/700788
推荐阅读
相关标签
  

闽ICP备14008679号