Android-->build.gradle-->packagingOptions,splits

来源:互联网 发布:windows自带软件 编辑:程序博客网 时间:2024/06/06 07:13

android {

    ......    buildTypes {        debug {            minifyEnabled true            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'        }        release {            minifyEnabled true            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'        }    }    //打包配置    //1、pickFirsts:当出现重复文件,会使用第一个匹配的文件打包进入apk    //2、merges:当出现重复文件,合并重复的文件打入apk    //3、excludes:打包的时候排除匹配的文件    packagingOptions {    //        pickFirsts = ['META-INF/LICENSE']            //这里不要直接=赋值,避免覆盖掉默认值    //        merge 'META-INF/LICENSE'            //这里不要直接=赋值,避免覆盖掉默认值            exclude 'META-INF/LICENSE'        }        splits {        //根据abi打出相关的包,避免把全部的都打进去,apk太大    //        abi {    //            enable true    //            reset()    //            //只打出以下两个包    //            include 'armeabi-v7a', 'x86'    //            //是否打出一个全量的包    //            universalApk false    //        }            //根据分辨率打出相关的包,避免把全部的都打进去,apk太大            density {                enable true                //排除xhdpi的                exclude 'xhdpi'            }        }    }    apply plugin: 'com.android.library'    android {        compileSdkVersion 25        buildToolsVersion "25.0.3"    defaultConfig {        minSdkVersion 15        targetSdkVersion 25        versionCode 1        versionName "1.0"        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"        //如果添加这句话表示将当前模块的proguard-rules.pro合并到引用这个模块的build.gradle中        consumerProguardFiles 'proguard-rules.pro'    }    buildTypes {        release {            minifyEnabled false            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'        }    }}