分类
Android Java

Android·版本号和版本名称获取

版本号和版本名称

app用于检查触发更新。

下面是GetVersion.class的代码

package com.example.willdelete;


import android.content.Context;
import android.content.pm.PackageManager;

public class GetVersion {
        /**
         * 获取当前本地apk的版本
         *
         * @param mContext
         * @return
         */
        public static int getVersionCode(Context mContext) {
            int versionCode = 0;
            try {
                    //获取软件版本号,对应budild.gradle下android:versionCode
                    versionCode = mContext.getPackageManager().
                    getPackageInfo(mContext.getPackageName(), 0).versionCode;
            } catch (PackageManager.NameNotFoundException e) {
                e.printStackTrace();
            }
            return versionCode;
        }

        /**
         * 获取版本号名称
         *
         * @param context 上下文
         * @return
         */
        public static String getVerName(Context context) {
            String verName = "";
            try {
                    verName = context.getPackageManager().
                    getPackageInfo(context.getPackageName(), 0).versionName;
            } catch (PackageManager.NameNotFoundException e) {
                e.printStackTrace();
            }
            return verName;
        }
    }

在MainActivity的一个点击button点击后,用Toast显示

button.setOnClickListener
(new View.OnClickListener() 
{
 @Override
  public void onClick(View view) 
{

String versionCode = GetVersion.getVersionCode(MainActivity.this) + "";
                String versionName = GetVersion.getVerName(MainActivity.this);
                Toast.makeText(MainActivity.this,versionCode,Toast.LENGTH_LONG).show();
                Toast.makeText(MainActivity.this,versionName,Toast.LENGTH_LONG).show();
}
}
);

接下来,数据库的一张表的一个字段上设置版本

每次启动app时,检查本地的版本和数据库的版本是否一致,不一致的话,到一个新的Activity内,设置更新按钮。

网页资源: