巧用buildconfig切换常量

41 篇文章 0 订阅

应用中有个需求,对于不同分支版本的appkey是不一样的值。为了让library不用新建分支,我们通过在主feature的分支下进行参数配置,主feature分支不同,则对应的appkey的值是不一样的。具体的操作方法如下:

1.主分支所在的project的buidle.gradle中:

ext {

    romAppsOutDir = "${rootProject.rootDir}/rom_apps_out"

 

    appkey = "\"ticni\""

    appSecret = "\"3EYWTj\”"

    //appkey = "\"tis\""

    //appSecret="\"JCd2WjIToWn6\""

                                                             

 

2.需要切换常量值的library的build.gradle中:

android {

    compileSdkVersion versions.compileSdk

    buildToolsVersion versions.buildTools

 

    defaultConfig {

        minSdkVersion 21

        consumerProguardFiles 'proguard-rules.pro'

        buildConfigField("String","HEADER_APP_KEY","${appkey}")

        buildConfigField("String","HEADER_APP_SECRET","${appSecret}")

        testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"

    }

}

 

 

 

3.在使用的地方引用buildconfig中的值:

import static com.network.api.BuildConfig.HEADER_APP_KEY;

import static com.network.api.BuildConfig.HEADER_APP_SECRET;

 

/**

* 对header中的请求参数进行较验,文档如下

* <p>

* http://gerrit/plugins/giti+/master/java/com/mobvoi/be/common/checker/README.md

*/

public class ReqAppkeyInterceptor implements Interceptor {

    private static final String APP_KEY = HEADER_APP_KEY;

    private static final String APP_SECRET = HEADER_APP_SECRET;

    /**

 

4.生成BuildConfig文件如下:

public final class BuildConfig {

  public static final boolean DEBUG = Boolean.parseBoolean("true");

  public static final String APPLICATION_ID = "com.network.api";

  public static final String BUILD_TYPE = "debug";

  public static final String FLAVOR = "";

  public static final int VERSION_CODE = -1;

  public static final String VERSION_NAME = "";

  // Fields from default config.

  public static final String HEADER_APP_KEY = "tinni";

  public static final String HEADER_APP_SECRET = "3VkCh83ZILOx7DEYWTj";

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值