Gradle使用/问题

来源:互联网 发布:linux如何打开pdf文件 编辑:程序博客网 时间:2024/06/16 01:33

1、引用自定义的gradle文件:
在app/build.gradle下添加:apply from: ‘suport.gradle’

2、gradle生成jar
//makeJar运行生成jar包
task makeJar(type: Copy) {
from(‘build/intermediates/bundles/release/classes.jar’, configurations.compile)
into(‘build/outputs/jar’)
rename(‘classes.jar’, ‘appgame_vivo_sdk_1.0.0.jar’)
}
makeJar.dependsOn(build)

可在android studio 右边的,gradle下找到相应module下的other/makejar,双击运行即可,生成的jar存放在build/outputs/jar下
也可通过命令执行:gradle makejar生成的目录一样

3、android7.0后android studio默认使用v2签名,若需要使用v1签名则在如下添加:
signingConfigs {
release {
storeFile file(‘./test.keystore’)
storePassword “test123”
keyAlias “test123”
keyPassword “test123”
v2SigningEnabled false //不使用v2签名
}
}
关于v1和v2签名的区别后续再详解成,在此不做介绍

4、引入的库和工程的v4/v7包版本冲突:
compile(‘com.trello.rxlifecycle2:rxlifecycle-components:2.1.0’) {//引入的库
//指定该库使用工程的v7
exclude group: ‘com.android.support’, module: ‘appcompat-v7’
//如果是v4
exclude group: ‘com.android.support’, module: ‘support-v4’
}

5、打包apk报错,提示
lintOptions {
abortOnError false
}
解决
android {
lintOptions {
abortOnError false
}
}

6、当一个库关联另一个库,而项目也关联这个库时添加这句话,否则报错提示存在多个库的引用
因为每个jar都有相应的META-INF/xxxx文件,多次引用会报错,报哪个有问题添加哪个
packagingOptions {
exclude ‘META-INF/DEPENDENCIES’
exclude ‘META-INF/LICENSE’
exclude ‘META-INF/NOTICE’
}

7、修改堆栈大小(解决方法数超过65535问题)
dexOptions {
incremental false
javaMaxHeapSize “8g”
}
defaultConfig {
multiDexEnabled true
}
dependencies {
compile ‘com.android.support:multidex:1.0.0’
}

原创粉丝点击