Gradle构建
1. 文件目录说明
- ./表示当前目录,即gradle文件所在位置。
- ../表示父级目录,即gradle文件所在的父级目录。
2.Gradlew命令
- gradlew -v 查看使用的gradlew版本信息
- gradlew assembleXXX
- gradlew assembleDebug 编译并打Debug包
- gradlew assemblexiaomiDebug 编译并打xiaomi的debug包其他类似
- gradlew assembleRelease 编译并打Release的包
- gradlew assemblexiaomiRelease 编译并打xiaomi的Release包,其他类似
- gradlew installRelease Release模式打包并安装
- gradlew uninstallRelease 卸载Release模式包
- gradlew :app:androidDependencies
- 查看完整的依赖树
3.混淆相关
buildTypes {
release {
//是否进行混淆 false-->否 true-->是
minifyEnabled false
//混淆配置文件
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
个人遇到的一些错误信息
- Element uses-permission#android.permission.ACCESS_FINE_LOCATION at AndroidManifest.xml:52:5-79 duplicated with element declared at AndroidManifest.xml:35:5-79
这个是说AndroidManifest.xml的52行申明的权限在AndroidManifest.xml的35行已经申明过了,删掉其中一行就好。 -
导入的support包不一致导致gradle冲突
例如:项目使用28.0.0的support包,但是第三方ARouter使用的是25.2.0的support包
解决:ARouter去掉依赖