相信技术的力量

AndroidStudio的Gradle配置

Gradle官网

签名配置

可以在debug模式下测试第三方登录,注册,支付等等,不用再每次都先打包再测试了

signingConfigs{
    debug {
        storeFile file("D://test.keystore")
        storePassword "123456"
        keyAlias "test"
        keyPassword "123456"
    }

    release {
        storeFile file("D://test.keystore")
        storePassword "123456"
        keyAlias "test"
        keyPassword "123456"
    }
}

指定jni目录

sourceSets {
    main {
        jniLibs.srcDirs = ['src/main/jniLibs']
    }
}

配置.so支持平台

arm平台下的.so可以兼容其他平台

所以如果.so平台丰富导致包体积过大,可以只保留armeabi-v7a和x86两个包下的.so(会略微影响性能)

ndk {
        abiFilters 'armeabi','armeabi-v7a', 'arm64-v8a', 'x86', 'x86_64', 'mips', 'mips64'
}

exit values 2

报出exit values 2 之类的错误,这时候一般是由于添加了重复的依赖包.以下方法可能会有帮助

1.检查build.gradle中的dependencies配置,去除重复的依赖包

compile fileTree(include: ['*.jar'], dir: 'libs',exclude:'android-support-v4.jar')

2.build.gradle的Android节点下,配置

packagingOptions {
    exclude 'META-INF/NOTICE' // will not include NOTICE file
    exclude 'META-INF/LICENSE' // will not include LICENSE file
    exclude 'META-INF/services/javax.annotation.processing.Processor'
}

编译版本号

  1. compileSdkVersion:这个主要是我们编译app时候用的sdk版本,就我们在AndroidStudio上面点击运行时候的编译时候的环境。记住这个只是在编译时候选择的版本,不涉及到运行时候的行为。由于androidStudio有预编译的功能所以会提示一些警告,提前了解新的sdk
  2. minSdkVersion:这个就是程序运行的最低的要求的Sdk,就是给说如果我设置的minSdkVersion是15的话那么如果你系统低于这个SdkVersion是安装不上的。还有一个好处就是。例如你设置miniSdk是3.0的话,你写的方法只有在4.0后才有的方法,这个时候就会提示你在3.0的时候是没有这个方法的。
  3. targetSdkVersion:targetSdk主要是提供向前兼容的作用

⬆️