移除权限
移除第三方sdk的权限,根据合并规则,在高优先级的移除低优先级的
代码语言:javascript复制<uses-permission
android:name="android.permission.VIBRATE"
tools:node="remove" />
minsdk 冲突
在 AndroidManifest 根目录下添加 <uses-sdk tools:overrideLibrary="com.packagename"/>
com.packagename
这个包名看第三方依赖的清单文件中配置的包名。
(下面开始凑字数?)
一个gradle引用另一个gradle的方法
base.gradle
代码语言:javascript复制ext.method1 {
println "method1"
}
ext.method2 {
param -> println "method2"
}
ext.method3 {
param1, param2, param3 -> println "method3"
}
然后 app.gradle 中
代码语言:javascript复制apply from: '../build-base.gradle'
method1()
method2("a")
method3("a","b",3)
mac 下环境变量
在 ~/.zprofile 下配置环境变量
代码语言:javascript复制export ORG_GRADLE_PROJECT_storeFile='/xxx'
export ORG_GRADLE_PROJECT_storePassword='xxx'
export ORG_GRADLE_PROJECT_keyAlias="xxx"
export ORG_GRADLE_PROJECT_keyPassword="xxx"
ORG_GRADLE_PROJECT 前缀表示将后面的值加到 Gradle 的环境变量中去。
代码语言:javascript复制signingConfigs {
release {
storeFile file("${rootProject.hasProperty('storeFile') ? storeFile : "xxx"}")
storePassword "${rootProject.hasProperty('storePassword') ? storePassword : "xxx"}"
keyAlias "${rootProject.hasProperty('keyAlias') ? keyAlias : "xxx"}"
keyPassword "${rootProject.hasProperty('keyPassword') ? keyPassword : "xxx"}"
}
}
之所以先判断是否 hasProperty,不直接用,是因为别人的电脑可能没配置,在 build 的时候就会检查出错误来。