安卓Version信息的几个应用:升级管理,guide页面显示

 Version位置:Android Studio进行安卓开发时在app的build.gradle中有一个defaultConfig里面有versionCode和versionName两个标签,代表了当前程序的版本信息,接下来简单说明一下这个版本信息的用处
  1. 管理升级:客户端启动时获取服务器最新版本号与当前版本进行对比,若有新版本则进行更新
  2. 引导界面:每次有大的更新发布需要添加一个引导界面对更新内容进行说明,通过判断版本号若是新的版本则显示引导界面,否则直接进入首页
  3. 版本标志:作为参数传给服务器,服务器根据不同版本显示不同内容,新版本发布会有用户选择继续使用老版本,这时服务器可能需要根据不同版本推送不同的信息,使得不同版本都能正常运行,也就是通常说的多版本维护,时间久了太旧的版本就会弃用,通过控制升级参数使用户强制升级否则不能用(不太友好,毕竟有些用户因设备原因无法升级新版本)或者提示某个版本以下不再维护
  4. 版本信息还有很多用处,不再一一列举
  5.  详细介绍一下版本号在升级管理中的应用,其他的类似
    1. 首先说明一点,安卓默认不允许低版本覆盖高版本,有类似需求时可以先卸载掉高版本再安装低版本
    2.  代码获取版本信息public static int getAppVersionCode(Context context) {
         
      if (context != null ) {
              PackageManager pm = context.getPackageManager();
             
      if (pm != null) {
                  PackageInfo pi;
                 
      try {
                      pi = pm.getPackageInfo(context.getPackageName(),
      0);
                     
      if (pi != null) {
                         
      return pi.versionCode;
                      }
                  }
      catch (PackageManager.NameNotFoundException e) {
                      e.printStackTrace();
                  }
              }
          }
         
      return -1;
      }
      *注:此处返回的是
      versionCode,versionName一般作为内部标识使用,pm中还可以获取很多其他的有用信息,例如firstInstallTime,lastUpdateTime,packageName等等
    3. 将版本号所谓value存入sharePreference中,从服务器获取最新的版本号,通过上段代码获取程序当前的版本号,若需要更新弹出类似下图的更新提示框
    4. 功能说明及实现思路
      1. 立即升级 :通过downLoadManager去下载新版本然后安装
               注意要把下载文件加头application/vnd.android.package-archive这样下载的文件默认为可安装文件,下载完成后自动打开是否安装页面
      2. 稍后再说 :延迟一段时间之后再次提醒
               将服务器当前版本号作为key,value为当前时间存入sharePreference中,再次启动程序时获取服务器当前最新版本号若在sharePreference中找到了对应的versionCode且当前时间减去sharePreference中存储的时间大于一天(具体时间自己设置)则弹出新版本升级框
      3. 不再提醒:服务器当前最新版本不再提示升级     
               同上,将服务器当前版本号作为key存入sharePreference中,再次启动程序时获取服务器当前最新版本号若在sharePreference中找到了对应的versionCode则不弹出新版本升级框
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值