Gradle 常用配置

一、release 、debug 版本不同配置

添加不同环境的接口切换和Debug 开关配置

   buildTypes {
           release {
               minifyEnabled true
               signingConfig signingConfigs.config
               proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
               buildConfigField("String","baseUrl","\"http://release.xxx.com/\"")//上线用接口地址
               buildConfigField("boolean","isDebug","false")//日志开关

               //generate apk file name
               applicationVariants.all { variant ->
                   variant.outputs.each { output ->
                       output.outputFile = new File(
                               output.outputFile.parent,
                               "${variant.productFlavors[0].name}-v${variant.buildType.name}-${defaultConfig.versionName}-${releaseTime()}.apk".toLowerCase())
                   }
               }

           }
           debug{
               minifyEnabled false
               //测试版使用上线用的签名是为了方便测试第三方功能,如分享、地图等等
               signingConfig signingConfigs.config
               buildConfigField("String","baseUrl","\"http://debug.xxx.com/\"")//测试用接口地址
               buildConfigField("boolean","isDebug","true")//日志开关
           }
       }

代码中使用:

public class LogUtil {

    public static void d(String msg) {
        if (!BuildConfig.isDebug|| TextUtils.isEmpty(msg)) {
            return;
        }
        Log.d("LogUtil", msg);
    }
}
public class UrlContants {

    private static final String BASE_URL = BuildConfig.baseUrl;
    public static final String LOGIN_URL =BASE_URL + "login";
}

二、统一版本号、构建工具版本等等

这么做的目的:统一配置、统一修改

步骤:

  1. 在根目录的 build.gradle 文件中加入下列代码
        ext{
            compileSdkVersion = 25
            buildToolsVersion = '25.0.2'
            minSdkVersion = 15
            targetSdkVersion = 23
    
            versionCode = 1
            versionName = '1.0'
        }
    
  2. 在 module 目录下的 build.gradle 的文件中使用
    android {
        compileSdkVersion rootProject.ext.compileSdkVersion
        buildToolsVersion rootProject.ext.buildToolsVersion
        defaultConfig {
            applicationId "com.mr.muiltchannelpack"
            minSdkVersion rootProject.ext.minSdkVersion
            targetSdkVersion rootProject.ext.targetSdkVersion
            versionCode rootProject.ext.versionCode
            versionName rootProject.ext.versionName
            testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
        }
    }
    

三、打多渠道包

 productFlavors{
        yingyongbao{}
        _360{}
        huawei{}
        wandoujia{}
        //other market
    }
    productFlavors.all{flavor->
        flavor.manifestPlaceholders = [UMENG_CHANNEL_VALUE: name]
    }

步骤:

Gradle 常用配置_第1张图片
step_01.png
Gradle 常用配置_第2张图片
step_02.png

结果:

Gradle 常用配置_第3张图片
result.png

代码地址

你可能感兴趣的:(Gradle 常用配置)