hhnf333 发表于 2018-1-7 20:55:46

Android 应用获取Jenkins编译的版本号

  Android很多应用的版本号最后都带了编译的版本号。比如说V1.0.0.125,后边的125就通常使用每次编译之后build history的号码,它是逐次增加,这样就可以区分每个细分的编译版本号,而不用人为的手动修改编译的版本号。对于软件开发和测试验证很有帮助。
  以下就以Jenkins编译为实例,讲述如何让你的android project代码引用到Jenkins 编译之后的版本号.
  1. 在build script的同级目录下新建一个文件“version.properties”,里边是版本的组成。${env.BUILD_NUMBER}就是我们编译环境里边的编译版本号。
  

VersionMajorNo = 1  
VersionMinorNo
= 0  
VersionPatchNo
= 0  
VersionBuildNo
= ${env.BUILD_NUMBER}  
VersionFull
= ${VersionMajorNo}.${VersionMinorNo}.${VersionPatchNo}.${VersionBuildNo}  

  2. 既然要在应用里边显示,我们就得在你的应用中,新建一个“Version”>  

public>
{
  

public static String getFullVersion()  
{
  

return "1.0.0.0"; //这个版本号不是Jenkins编译最终的版本号  
   }
  
}
  

  3. 这一步很关键,关系到第一步中得到的版本信息替换到第二步的Java类文件中去。
  在Ant build script中,我们首先要加载“version.properties”这个property 文件,所有在Ant build script的顶部我们要加一行加载这个property file的脚本。
  

<property file="./version.properties"/>  

  然后我们需要把我们得到的版本信息重新输出到JAVA Version这个类的文件当中,Ant 脚本如下:
  

<echo file='\com\quest\spotlightexpress\data\Version.java'>  
package com.quest.spotlightexpress.data;

  
public>  
{
  
public static String getFullVersion()
  
{
  

return "${VersionFull}";  
}
  
}
  

</echo>   

  这样我们编译出来的程序就能使用Jenkins编译时的版本号了。 如果我们编译时的版本号${env.BUILD_NUMBER}是125,则在程序里边显示的版本号是 1.0.0.125。 大功告成,你去试一试吧
页: [1]
查看完整版本: Android 应用获取Jenkins编译的版本号