威哥本次发布app更新时发现原来自己写到类里面的版本号时不顶用的,需要使用build.gradle里面的系统内嵌版本信息才能发布升级app。
威哥这里和大家一起分享下,首先我们需要在build.gradle文件中配置每次升级的版本序号和版本显示名称,版本号必须大于上次发布的版本号。
注意:系统内嵌版本序号为int类型。
废话不多说,威哥直接上版本获取方法:
/** * 系统帮助类 * Author:William(徐威) * Create Time:2018-12-25 */ public class SystemHelper { /** * 获取app系统版本序号 * Author:William(徐威) * Create Time:2018-12-25 * * @param context * @return */ public static int getVersionCode(Context context) throws Exception { int versionCode = 0; try { PackageManager manager = context.getPackageManager(); try { PackageInfo info = manager.getPackageInfo(context.getPackageName(), 0); versionCode = info.versionCode; } catch (PackageManager.NameNotFoundException e) { e.printStackTrace(); } } catch (Exception ex) { ex.printStackTrace(); throw new Exception(String.format("获取app统版本序号报错:%s。", ex.getMessage())); } return versionCode; } /** * 获取app系统版本名称(妙生活使用其为系统版本号展示) * Author:William(徐威) * Create Time:2018-12-25 * * @param context * @return */ public static String getVersionName(Context context) throws Exception { String versionName = null; try { PackageManager manager = context.getPackageManager(); try { PackageInfo info = manager.getPackageInfo(context.getPackageName(), 0); versionName = info.versionName; } catch (PackageManager.NameNotFoundException e) { e.printStackTrace(); } } catch (Exception ex) { ex.printStackTrace(); throw new Exception(String.format("获取app系统版本名称报错:%s。", ex.getMessage())); } return versionName; } }