Android 在页面中显示打包日期

来源:互联网 发布:matlab 矩阵方程 命令 编辑:程序博客网 时间:2024/06/06 00:46

项目有需求,要求在app里显示安装包打包的日期,我的想法是:
1,在build.gradle中定义打包的日期变量。
2,在app里引用BuildConfig文件自动生成的变量并显示。

实现如下:
先在Build.gradle中定义得到打包时间的方法,在文件内容最外层定义:

//得到打包时间def static releaseTime() {    return new Date().format("yyyy-MM-dd HH:mm:ss", TimeZone.getTimeZone("UTC"))}

然后在Build.gradle的BuildTypes中调用此方法来定义日期值,这样:

buildConfigField 'String', 'versionDateTime', releaseTime()

编译之后,结果可以在BuildConfig文件中看到,
我想要的结果是这样的:

  public static final String versionDateTime = "2017-11-15 12:49:43"

实际结果却是这样:

  public static final String versionDateTime = 2017-11-15 12:49:43

显然在定义versionDateTime这个String变量的时候,格式不对。该怎么改呢?
经过网上求教找到了办法,官方文档有说明,定义string必须带引号:

像下面这样两种改法都是可以的:

buildConfigField 'String', 'versionDateTime', '\"'+releaseTime()+'\"'buildConfigField 'String', 'versionDateTime', "\"${releaseTime()}\""

其中出现了两种引号,要一一对应。

这样修改之后,BuildConfig结果就正常了:

  public static final String versionDateTime = "2017-11-15 12:59:33"

在activity中使用:

textView.setText(BuildConfig.versionDateTime);
阅读全文
0 0
原创粉丝点击