1 通过AS直接跑到手机上 当我们写一个或者维护app的时候,通过studio直接跑到手机上,如果我们没有设置 build.gradle中 buildTypes标签下的属性 那么这个时候我们的app直接默认调用的是 C盘\users \XXX(自己的用户名) .android 目录下的 debug.keystors 这是我们默认跑一个app的签名文件 它的查看方法是
--》C:\Users\zyf>cd .android
--》C:\Users\zyf\.android>keytool -list -v -keystore debug.keystore
--》输入android (这个时候输入你是看不到输入信息的 和一般输入框不同 你只要看到输入谜语指令就行了)
--》这个时候我们就看到了默认签名的各种信息 又md5 sha1值等
2 当我们编译成apk的时候 这个时候as不让我们用默认的签名文件了,这个时候我们必须生成一个签名文件。这个网上很好找生成起来也比较简单。
生成的.jks签名文件查看的方法是 在as的Termnal窗口下
cd cd cd 进入到我们签名文件存放的文件夹
keytool -list -v -keystore F:\ProjectKEY\kejifuwukey\XXXX.jks
会提示你输入签名文件的密码 输入即可 你会发现 他和默认的值是不一样的
这个时候如果我们安装了apk的app 那么再用as直接往手机上跑 他会提示我们必须先卸载掉安装的app,因为的是签名文件不用。 这个时候我们就得在build.grade的android 标签下配置了
signingConfigs {
config {
keyAlias '你的签名文件的别名'
keyPassword '签名文件的密码'
storeFile file('xxx.jks') (如果你得签名文件在某盘下 那么就写路劲,如果拷贝到了项目的app目录下 那就直接写文件名.jsk)
storePassword '签名别名的密码'
}
}
然后在buildTypes标签下的 release标签下 添加 signingConfig signingConfigs.config 这是告诉我们正式打包版调用的签名文件
debug {
signingConfig signingConfigs.config
}
添加了这个标签 他和 release标签是平级的 都在buildTypes标签下 添加了这个 他在我们直接通过as跑得时候也是调用我们生成的签名文件。
配置了标签你会发现 我们打包的正式APK安装后也能直接从AS上跑到手机 因为签名用的一样的呀!
希望这篇文章能让大家对签名文件的调用有简单的理解