1. 程式人生 > >Android獲取應用的版本號和Android系統版本號

Android獲取應用的版本號和Android系統版本號

下面是 Android 獲取應用的版本號,一般來說,我們獲取版本號就是獲取展示給消費者的版本號:

    //獲取當前程式版本名(對消費者不可見的版本號)
    public String getAppVersionCode() {
        String versioncode = "";
        try {
            PackageManager pm = getPackageManager();
            PackageInfo pi = pm.getPackageInfo(getPackageName(), 0);
            versioncode = String.valueOf(pi.versionCode);
            if (versioncode == null || versioncode.length() <= 0) {
                return "";
            }
        } catch (Exception e) {
            Log.e("VersionInfo", "Exception", e);
        }
        return versioncode;
    }

    //獲取當前應用的版本號(展示給消費者的版本號)
    private String getAppVersionName() {
        // 獲取packagemanager的例項
        PackageManager packageManager = getPackageManager();
        // getPackageName()是你當前類的包名,0代表是獲取版本資訊
        PackageInfo packInfo = null;
        try {
            packInfo = packageManager.getPackageInfo(getPackageName(), 0);
        } catch (PackageManager.NameNotFoundException e) {
            e.printStackTrace();
        }
        String version = packInfo.versionName;
        return version;
    }

下面是獲取 Android 系統版本號:

Build.VERSION.SDK_INT

知道獲取方法之後,下面使用的示例程式碼:

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        Log.e("==對消費者不可見的版本號", getAppVersionCode());
        Log.e("==展示給消費者的版本號", getAppVersionName());
        Log.e("==當前系統的android版本號", Build.VERSION.SDK_INT+"");
    }

列印結果為: