android – 声明buildConfigField时使用local.properties字段

我有一个build.gradle和一个local.properties文件.我想在local.properties中声明一个值,该值未签入版本控制,以在build.gradle中使用.

我有buildConfigField使用:

buildTypes {
    debug {
        buildConfigField "String","TEST","test"
    }
}

不幸的是,这会导致错误

buildTypes {
    debug {
        buildConfigField "String",local.properties.get("test")
    }
}

解决方法

它可以实现如下:
def getProps(String propName) {
  def propsFile = rootProject.file('local.properties')
  if (propsFile.exists()) {
    def props = new Properties()
    props.load(new FileInputStream(propsFile))
    return props[propName]
  } else {
    return "";
  }
}

在您的buildTypes块中:

buildTypes {
    debug {
        buildConfigField "String",getProps("test")
    }
}

相关文章

Android性能优化——之控件的优化 前面讲了图像的优化,接下...
前言 上一篇已经讲了如何实现textView中粗字体效果,里面主要...
最近项目重构,涉及到了数据库和文件下载,发现GreenDao这个...
WebView加载页面的两种方式 一、加载网络页面 加载网络页面,...
给APP全局设置字体主要分为两个方面来介绍 一、给原生界面设...
前言 最近UI大牛出了一版新的效果图,按照IOS的效果做的,页...