Android获取App版本号和版本名

在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)即可。

猜你喜欢

转载自blog.csdn.net/vadonmo/article/details/78853632