在gradle设置versionName和versionCode后,每次编译版本号都与当前时间相关,需求是显示出当前版本号便于沟通时说明是哪个版本。
defaultConfig {
。。。
versionCode 1
versionName "1.1-" + releaseTime()
。。。
}
同时在最先面添加下面代码;
def releaseTime() {
return new Date().format("yyyyMMddHHmmss")
}
此时可以实现版本号动态变化。显示当前版本号需要获取gradle中的versionName。工具类添加下面代码,方便调用
//版本名
public static String getVersionName(Context context) {
return getPackageInfo(context).versionName;
}
//版本号
public static int getVersionCode(Context context) {
return getPackageInfo(context).versionCode;
}
private static PackageInfo getPackageInfo(Context context) {
PackageInfo pi = null;
try {
PackageManager pm = context.getPackageManager();
pi = pm.getPackageInfo(context.getPackageName(),
PackageManager.GET_CONFIGURATIONS);
return pi;
} catch (Exception e) {
e.printStackTrace();
}
return pi;
}
调用时直接Tools.getVersionName(context)即可。