Android 常用gradle脚本

app打包重命名

applicationVariants.all { varint ->
    varint.outputs.all {
        if (varint.buildType.name.equals("release")) {
            def releaseApkName = "123"+app_testVersionName+".apk"          //APP名字与版本号
            outputFileName = releaseApkName
        }
    }

}

app文件拷贝到指定目录

tasks.getByName("assemble") {
    it.doLast {
        def appReleaseDir = "${rootProject.rootDir}/version"
        File file = new File("${appReleaseDir}")
        if (!file.exists()) {
            file.mkdirs()
        }
        copy {
            from("build/outputs/apk/release")
            into("${appReleaseDir}")
            include('*.apk', 'output.json')
        }
    }
}

设置BuildConfig中的变量

    buildTypes {
        debug {
            buildConfigField "boolean", "LOG_DEBUG", "true"
            buildConfigField "boolean", "USE_CANARY", "true"
            buildConfigField "String", "BUILD_DATE", "\"${getDate()}\""
            buildConfigField "String", "TEST_VERSION", "\"${app_testVersionName}\""

            minifyEnabled false
            signingConfig signingConfigs.autel_sign
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }

        release {
            buildConfigField "boolean", "LOG_DEBUG", "false"
            buildConfigField "boolean", "USE_CANARY", "false"
            buildConfigField "String", "BUILD_DATE", "\"${getDate()}\""
            buildConfigField "String", "TEST_VERSION", "\"${app_testVersionName}\""
            signingConfig signingConfigs.autel_sign
            minifyEnabled false
            shrinkResources false
            zipAlignEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }

上传maven私服仓库

uploadArchives {
    repositories.mavenDeployer {
        repository(url: "${Url}") {   //maven地址
            authentication(userName: "admin", password: "admin123")
        }

        pom.version = cfg.maxidasVersionName
        pom.artifactId = "123"
        pom.groupId = "com.aukk.cc"
    }
}

使用AAR文件时

repositories {
    flatDir {
        dirs 'libs','../publicLib/libs'
    }
}

解决依赖冲突时


configurations.all {
    resolutionStrategy.eachDependency { DependencyResolveDetails details ->
        def requested = details.requested
        if (requested.group == 'com.android.support') {
            if (requested.name.startsWith("multidex")) {
                details.useVersion "${cfg.multidex}"
            } else {
                details.useVersion "${cfg.supportVersion}"
            }
        }
    }
}

    configurations.all {
        resolutionStrategy.force 'com.android.support:support-annotations:27.1.0'
    }

控制编译报错时日志输出行数

allprojects {
    afterEvaluate {
        tasks.withType(JavaCompile.class) {
            options.compilerArgs << "-Xmaxerrs" << "500"
        }
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值