Gradle多渠道打包 :https://www.jianshu.com/p/3cf73857abe3
为了给App加上标识,Android studio在项目编译的时候需要签名,需要keystore文件。那为什么我运行项目能直接打包呢。那是因为在用户文件下的.android目录下,有名为debug.keystore,供默认编译运行用使用。而在发布release版本时,需要我们自己创建的keystore文件。
打开JSK文件的方法:
1:dos命令定位到.jks文件下。
2:输入命令:keytool -v -list -keystore keystore.jks【一定要记得加上 -v 参数,不然只能看到SHA1,没有MD5】【keystore.jks,需要替换为你自己的密钥所在路径和文件名】
进入.android 文件夹访问debug.keystore信息为工程配置正式keystore
- 生成keystore签名文件
先创建自己的keystore。在build->Generated Signed Apk下创建keystore,选定生成文件夹、Alias、password等信息,完成创建。
-
进入Project Structure -> Signing菜单,比如命名为Config,选择生成的keystore文件,并填入正确的密码。
设置名为config的签名配置 -
进入Project Structure -> Build Types菜单,“+”号创建debug和release版本,在Signing Config选项选择创建的Config配置,点击OK完成。
- gradle编译完成,生成signingConfigs签名配置,并设置了release和debug版的签名配置。
signingConfigs {
configRelease {
keyAlias 'xxx'
keyPassword 'xxx'
storeFile file('jksfile/xxx.jks')
storePassword 'xxx'
v1SigningEnabled true
v2SigningEnabled true
}
configDebule {
keyAlias 'xxx'
keyPassword 'xxx'
storeFile file('jksfile/xxx.jks')
storePassword 'xxx'
}
}
buildTypes {
release {
ndk{
abiFilters "armeabi-v7a"
}
minifyEnabled true
shrinkResources true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
signingConfig signingConfigs.configRelease
}
debug {
ndk {
abiFilters "armeabi-v7a", "x86"
}
signingConfig signingConfigs.configDebule
}
}
网友评论