gradle使用杂项
- minifyEnabled 表示不混淆,通常情况下,debug模式要设置为false
gradle导入aar步骤
- 复制aar包到libs文件夹
- 在应用的gradle文件中添加
repositories { flatDir { dirs 'libs' } }
- 在dependencies里面添加如下行,其中的yourAARfileName是你的aar包的名字
compile(name:'yourAARfileName', ext:'aar')
productFlavors作用
- 创建不同的产品
- 创建不同的产品并为不同产品分配专有属性
- 设置不同代码引用
- 先在src目录下简历对应的文件夹比如java代码则建立productjavares文件夹则建立productres
- 建立包名建立Java类文件
- 设置不同的产品引入不同的包
defaultConfigs块种的所有配置都可以在productFlavors中进行设置
例如
- applicationId 实际就是打包生成的包名,可以和代码中的包名不一致
- manifestPlaceholders 使用方法
<!--在manifest文件中--> <meta-data android:name="com.amap.api.v2.apikey" android:value="${amapKey}" />
//productFlavors文件中 manifestPlaceholders = ["amapKey":"xxxxxxxxxxxx"]
- versionName 版本名字
- versionCode 版本代码
- java.srcDirs = [‘src/product/java’] 使用不同代码
- 引用不同的包名
//不同产品引入不同的包,product和temp属于两个产品 productCompile "com.android.support:appcompat-v7:26.+" tempCompile "com.android.support.constraint:constraint-layout:1.0.2"
gradle中的buildConfigField作用
- 在buildType或者productFlavors里面进行配置
- 配置格式为 buildConfigField “type” “fieldName” “value”
buildConfigField "int", "TEST", "1" buildConfigField "boolean", "ISHOWN", "false" buildConfigField "String", "NAME", "\"XXXXXXXXX\""
- 调用方法为
int num = BuildConfig.TEST; boolean isShown = BuildConfig.ISHOWN; String name = BuildConfig.NAME;