android – Gradle不生成带引号的String

我正在尝试使用此函数在BuildConfig中包含一个包含构建日期的自定义字段
def getDate() {
    def date = new Date()
    def formattedDate = date.format('yyyyMMddHHmmss')
    return formattedDate
}

然后,在defaultConfig中我放了:

buildConfigField "String","BUILD_NUMBER",getDate()

问题是,Gradle生成的字段是:

public static final String BUILD_NUMBER = 20141108114911;

抛出“整数太大”,但我不想要一个整数,我想要一个字符串!

我试图用String明确地替换def,尝试使用getDate().toString,getDate()作为String和“${getDate()}”,并且仍然没有引用我的String.我还尝试在日期中间放置一个像“ – ”这样的字符,它仍然不会生成引号,使得:

public static final String BUILD_NUMBER = 20141108-114911;

显然没有任何意义……

我不在这里,不熟悉Groovy,所以不确定是否有另一种(工作)方式来“强制”一个字符串.

解决方法

您需要添加转义引号:
buildConfigField "String","\"${new Date().format('yyyyMMddHHmmss')}\""

相关文章

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