build.gradle 4.46 KB
// Top-level build file where you can add configuration options common to all sub-projects/modules.
apply from: "config.gradle"

static void imput(String type, Project project, Object dependencyNotation) {
    if (project != dependencyNotation) project.dependencies.add(type, dependencyNotation)

}

buildscript {
    repositories {
        google()
        jcenter()

    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.5.1'
        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
        classpath "com.alibaba:arouter-register:1.0.2"
        classpath 'org.greenrobot:greendao-gradle-plugin:3.2.2'
    }
}

allprojects {
    repositories {
        google()
        jcenter()

    }
}

////配置全局变量
//ext {
//    def versionMajor = 1
//    def versionMinor = 5
//    def versionPatch = 6
//    def versionBuild = 0
//    // module依赖库公共版本号
//    versionCode = versionMajor * 1000 + versionMinor * 100 + versionPatch * 10 + versionBuild
//    versionName = "${versionMajor}.${versionMinor}.${versionPatch}.${versionBuild}"
//
//    compileSdkVersion = 29
//    buildToolsVersion = "29.0.2"
//    minSdkVersion = 19
//    targetSdkVersion = 29
//}
allprojects {
    afterEvaluate {
        if (project.parent == null || project.parent == rootProject) return

        android {
            compileSdkVersion 29
            buildToolsVersion "29.0.0"
            defaultConfig {
                if (minSdkVersion == null) minSdkVersion 21
                if (targetSdkVersion == null) targetSdkVersion 29
                if (versionCode == null) versionCode 1
                if (versionName == null) versionName "1.2"

                testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"

                javaCompileOptions {
                    annotationProcessorOptions {
                        arguments = [
                                AROUTER_MODULE_NAME: project.getName()
//                                ,
//                                AROUTER_GENERATE_DOC: "enable"
                        ]
                    }
                }

                ndk {
                    abiFilters(
                            "armeabi-v7a"
//                            , "x86"
                    )
                }
            }

            compileOptions {
                sourceCompatibility JavaVersion.VERSION_1_8
                targetCompatibility JavaVersion.VERSION_1_8
            }

            dataBinding {
                enabled true
            }

            dexOptions {
                javaMaxHeapSize '4g'
            }
            signingConfigs {
                debugConfig {
                    storeFile file("www.cnlive.com.key")
                    storePassword "www.cnlive.comPassw0rd"
                    keyAlias "strike-debug"
                    keyPassword "www.cnlive.com"
                }
                releaseConfig {
                    if (store_file != null) storeFile file(store_file)
                    if (store_password != null) storePassword store_password
                    if (key_alias != null) keyAlias key_alias
                    if (key_password != null) keyPassword key_password
                }
            }
        }
        //核心库
        imput("implementation", project, moudle.core_base)

        //Tripartite Base
        for (String moudle : base_librarys) imput('implementation', project, moudle)
//        for (String moudle : base_librarys) imput('api', project, moudle)
        for (String moudle : base_compilers) imput('annotationProcessor', project, moudle)

    }

    repositories {
        google()
        jcenter()
        maven {
            url maven.mixedUrl
            credentials { username = nexusId; password = nexusPw }
        }
        //------------------ 资源库配置 END------------------
        maven {
            url 'https://dl.bintray.com/granzon/cnlive'
        }
        maven {
            url 'https://dl.bintray.com/granzon/cnliveLibs'
        }
        maven {
            url "https://jitpack.io"
        }
        maven {
            url 'http://developer.huawei.com/repo'
        }
    }
}
task clean(type: Delete) {
    delete rootProject.buildDir
}

//配置全局变量
ext {
    libEmoj = '2.0.9'
    libMediaPicker = '1.5.8'
    //    loading动画
    avi = "2.1.3"
    //蓝牙
    BleLib="2.3.4"
    //动画大全
    viewAnimationsEasing='2.0@aar'
    viewAnimationsAndroid='2.3@aar'
}