关于gradle 的简单使用小技巧,或注意点。 本文章将记录下自己知道的。并会持续更新。
如有错误或遗漏, 请留言批评
导入.9图片报错
aaptOptions.cruncherEnabled =false
aaptOptions.useNewCruncher =false
defaultConfig{
ndk {
//选择要添加的对应cpu类型的.so库。一般如果使用了第三方依赖,仅配置 armeabi 即可
//如果使用 使用模拟器进行调试, 记得添加上 x86 架构
abiFilters 'armeabi'
// 还可以添加 'x86', 'x86_64', 'mips', 'mips64', 'armeabi-v7a', 'arm64-v8a'
}
//最大方法数超过限制时, 需要配置上这个方法, 对classdes.dex 进行分包。
//添加上依赖 com.android.support:multidex:1.0.1 在使用Application 类里调用 MultiDex.install(context); 使5.0 以下的手机可以兼容
multiDexEnabled =true
//如果你的应用不需要支持国际化,那么可以设置 resConfigs 为 “zh”,”en”,即只支持中英文
resConfigs "zh","en“
}
signingConfigs{
debug {
//可以设置debug包 使用的固定一个测试签名 。 也可以在
storeFile file("C:\\file\\debug.KEYSTORE")
}
release {
//设置签名文件信息 ../ 即项目根目录下的位置 , 本配置需要在buildTypes里配合使用
storeFile file("../sigin.jks")
storePassword "password"
keyAlias "alias"
keyPassword "keyPassword"
}
}
//注意点: 需要配置在 signingConfigs 下面,否则会报错
//作用:用来配置多渠道打包,里面可以添加一个特别的信息渠道信息
//当前这个来设置你在debug时使用的默认配置
productFlavors {
yingyongbao {
// 参数1: 数据类型, 参数2: 变量名 参数3: 变量内容 如果是String 类型 写法 '" VAULE"'
//代码里使用的话 BuildConfig.LOGSHOW , 使用包名目录下的 包
buildConfigField "boolean","LOGSHOW","true"
//这个方法是在AndroidManifest.xml 里 直接用占位符 ${key}
manifestPlaceholders =[
"key"="value"
]
}
xiaomimarket {}
wandoujiamarket{}
}
buildTypes {
debug {
}
release{
//开启代码混淆
minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
//Zipalign优xx化
zipAlignEnabledtrue
//用 app 目录下的gradle 工具打包时, 设置 签名内容
signingConfig signingConfigs.release
//app 设置app打包后在名字
applicationVariants.all { variant ->
variant.outputs.each { output ->
def outputFile = output.outputFile
if (variant.buildType.name.equals('release')) {
//生成apk名字的格式:app_1.0.0_2016-06-22_baidu.apk
//可自定义自己想要生成的格式
def fileName ="app_${defaultConfig.versionName}_${releaseTime()}_${variant.productFlavors[0].name}.apk"
output.outputFile =new File(outputFile.parent, fileName)
}
}
}
}
}
android studio 打包脚本