简要介绍
在app开发完成,要发布时,需要进行证书配置,但是为了安全起见,不能把证书配置信息放到版本上传到git库上,需要单独保存.
像下面这样配置的话,人人都知道证书的密码和文件位置,一旦泄漏,后果就很难过了.
![](https://img.haomeiwen.com/i6169789/64ea0ead7b3baeb6.png)
解决方案
通过Properties文件单独保存.
- 项目根目录下创建keystore.properties
keystoreFile=../test.keystore
keystoreAlias=test
keystoreAliasPSW=123456
keystorePSW=123456
- 修改app的build.gradle文件
下面前三行是读取配置文件,release节点是从配置文件读取配置信息.
def keystorePropsFile = rootProject.file("keystore.properties")
def keystoreProps = new Properties()
keystoreProps.load((new FileInputStream(keystorePropsFile)))
android {
......
signingConfigs {
release {
storeFile file(keystoreProps['keystoreFile'])
storePassword keystoreProps['keystorePSW']
keyAlias keystoreProps['keystoreAlias']
keyPassword keystoreProps['keystoreAliasPSW']
}
}
buildTypes {
release {
minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
signingConfig signingConfigs.release
}
}
}
- 在.gitignore文件中增加
keystore.properties
Demo源代码
demo代码为了方便大家查看,我故意将keystore.properties文件上传了.正常情况下,在ignore增加了过滤之后,就不会上传了.
https://github.com/cxyzy1/signAppDemo.git
安卓开发技术分享: https://www.jianshu.com/p/442339952f26
更多技术总结好文,请关注:「程序园中猿」
![](https://img.haomeiwen.com/i6169789/535373c2dfe054d7.png)
网友评论