美文网首页
Android Studio里面的Build.gradle的配置

Android Studio里面的Build.gradle的配置

作者: Marlon_IT | 来源:发表于2018-02-01 14:39 被阅读11次
    apply plugin: 'com.android.application'//说明module的类型,com.android.application为程序,com.android.library为库
    android {
        compileSdkVersion 22//编译的SDK版本
        buildToolsVersion "22.0.1"//编译的Tools版本
        defaultConfig {//默认配置
            applicationId "com.nd.famlink"//应用程序的包名
            minSdkVersion 8//支持的最低版本
            targetSdkVersion 19//支持的目标版本
            versionCode 52//版本号
            versionName "3.0.1"//版本名
            manifestPlaceholders = [ UMENG_CHANNEL_VALUE:"hsq" ]//声明友盟渠道名是可变的
        }
        sourceSets {//目录指向配置
            main {
                manifest.srcFile 'AndroidManifest.xml'//指定AndroidManifest文件
                java.srcDirs = ['src']//指定source目录
                resources.srcDirs = ['src']//指定source目录
                aidl.srcDirs = ['src']//指定source目录
                renderscript.srcDirs = ['src']//指定source目录
                res.srcDirs = ['res']//指定资源目录
                assets.srcDirs = ['assets']//指定assets目录
                jniLibs.srcDirs = ['libs']//指定lib库目录
            }
            debug.setRoot('build-types/debug')//指定debug模式的路径
            release.setRoot('build-types/release')//指定release模式的路径
        }
        signingConfigs {//签名配置
            release {//发布版签名配置
                storeFile file("fk.keystore")//密钥文件路径
                storePassword "123"//密钥文件密码
                keyAlias "fk"//key别名
                keyPassword "123"//key密码
            }
            debug {//debug版签名配置
                storeFile file("fk.keystore")
                storePassword "123"
                keyAlias "fk"
                keyPassword "123"
            }
        }
    
        buildTypes {//build类型
            release {//发布
                minifyEnabled true//混淆开启
                proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-project.txt'//指定混淆规则文件
                signingConfig signingConfigs.release//设置签名信息
            }
            debug {//调试
                signingConfig signingConfigs.release
            }
        }
        packagingOptions {
            exclude 'META-INF/ASL2.0'
            exclude 'META-INF/LICENSE'
            exclude 'META-INF/NOTICE'
            exclude 'META-INF/MANIFEST.MF'
        }
    
        lintOptions {
            abortOnError false//lint时候终止错误上报,防止编译的时候莫名的失败
        }
        
        //打包-渠道
        productFlavors {
            hsq{}
            hsq_dx{}
            hsq_wx{}
            baidu{}
            yingyongbao{}
            ppzhushou{}
            anzhi{}
            zhushou360{}
            huawei{}
            lenovomm{}
            wandoujia{}
            mumayi{}
            meizu{}
            youyi{}
            sougou{}
        }
        
        //打包-防渠道代码重复处理
        productFlavors.all { flavor ->
            flavor.manifestPlaceholders = [ UMENG_CHANNEL_VALUE:name ]
        }
    }
    
    dependencies {//依赖
        compile fileTree(dir: 'libs', exclude: ['android-support*.jar'], include: ['*.jar'])   //编译lib目录下的.jar文件
        compile project(':Easylink')//编译附加的项目
        compile project(':ImageLibrary')
        compile project(':ImageResLibrary')
        compile project(':Ofdmtransport')
        compile project(':PullToRefreshLibrary')
        compile project(':RecorderLibrary')
        compile project(':WebSocket')
        compile project(':WidgetLibrary')
        compile 'com.nostra13.universalimageloader:universal-image-loader:1.9.3'//编译来自Jcenter的第三方开源库
    }
    
    
    

    相关文章

      网友评论

          本文标题:Android Studio里面的Build.gradle的配置

          本文链接:https://www.haomeiwen.com/subject/rqudzxtx.html