2017-03-17 98 views
-1

抬头,gradle-gurus! :)我的配置:Gradle添加时间戳生成失败(找不到.apk)

def getDate() { 
    def date = new Date() 
    def formattedDate = date.format('_yyyy-MM-dd-hh-mm-ss') 
    return formattedDate 
} 

... 

fileName = fileName.replace("release", 
    "release" + "-" + defaultConfig.versionName + getDate()); 

... 

的gradle这个是好的,只是GETDATE()导致该问题:

“M104释放,0.2.9_2017-03-17-06-10-14。 apk在磁盘上不存在。“

是否有机会用临时文件(或其他)解决这个问题? A“解决方案”将只是返回_yyyy-MM-dd-hh-mm(无秒),但如果我在 启动构建06:10:构建也将失败..

回答

1

你可以试试这个方法,让我知道,如果它的工作原理

def getDate() { 
    new Date().format('yyyyMMddHHmmss') 
} 

还有一个解决办法是 你可以在你的build.gradle自定义函数和变量定义。

def versionMajor = 3 

def buildTime() { 
    def df = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm'Z'") // you can change it 
    df.setTimeZone(TimeZone.getTimeZone("UTC")) 
    return df.format(new Date()) 
} 

然后你可以使用它:

android { 
    defaultConfig { 
     versionName "${versionMajor}-beta-build-${buildTime()}" 
    } 
} 

,或者如果你想将其添加到您versionNameSuffix

beta { 
    versionNameSuffix "-beta-build-${buildTime()}"  
}