获得SHA1以及错误java.lang.Exception: **库文件不存在: keystore

     一:在Android studio中Terminal中切换到相应的盘符下,我的jks文件在D盘,输入keytool -v -list -keystore myfirst.jks   “myfist.jks” 是你项目生成的名称

获得SHA1以及错误java.lang.Exception: **库文件不存在: keystore

然后输入你的密码,得到如下,其中获得你的SHA1:

获得SHA1以及错误java.lang.Exception: **库文件不存在: keystore

二:错误java.lang.Exception: **库文件不存在: keystore

1.你文件的位置没找到

2.其实你还没有生成吧,如何生成?答Android studio中build点击=》GENERATE SIGNED APK

获得SHA1以及错误java.lang.Exception: **库文件不存在: keystore

点击后

获得SHA1以及错误java.lang.Exception: **库文件不存在: keystore

有的点击choose existing 没有点击create new ,有的就不说了,没有的点击create new

获得SHA1以及错误java.lang.Exception: **库文件不存在: keystore

点击后效果:

获得SHA1以及错误java.lang.Exception: **库文件不存在: keystore

给你的文件找一个位置,并起一个名字,然后点击ok,我们再次回到这个位置

获得SHA1以及错误java.lang.Exception: **库文件不存在: keystore

先给你的key store path设置密码,password输入密码,confirm 再次确认

下面的key:

Alias:**名称 
            Password/Confirm:**密码 
            Validity(years):**有效时间 
            First and Last Name:**颁发者姓名 
            Organizational Unit:**颁发组织 
            City or Locality:城市 
            Country Code(XX):国家 

填完点击ok,接下来如下

获得SHA1以及错误java.lang.Exception: **库文件不存在: keystore

选择两个版本 V1,V2,引用https://blog.****.net/lvshuchangyin/article/details/62227286

问题描述(v1和v2)

Android 7.0中引入了APK Signature Scheme v2,v1呢是jar Signature来自JDK
V1:应该是通过ZIP条目进行验证,这样APK 签署后可进行许多修改 - 可以移动甚至重新压缩文件。
V2:验证压缩文件的所有字节,而不是单个 ZIP 条目,因此,在签名后无法再更改(包括 zipalign)。正因如此,现在在编译过程中,我们将压缩、调整和签署合并成一步完成。好处显而易见,更安全而且新的签名可缩短在设备上进行验证的时间(不需要费时地解压缩然后验证),从而加快应用安装速度。


解决方案一
v1和v2的签名使用
只勾选v1签名并不会影响什么,但是在7.0上不会使用更安全的验证方式
只勾选V2签名7.0以下会直接安装完显示未安装,7.0以上则使用了V2的方式验证
同时勾选V1和V2则所有机型都没问题

解决方案二
在app的build.gradle的android标签下加入如下

signingConfigs {

  debug {

      v1SigningEnabled true

      v2SigningEnabled true

 }

 release {

      v1SigningEnabled true

      v2SigningEnabled true

  }

}