轉自:http://blog.csdn.net/wh_19910525/article/details/8660416
Android的版本可以在androidmainfest.xml中定義,主要有android:versionCode和android:versionName
- android:versionCode:主要是用於版本升級所用,是INT類型的,第一個版本定義為1,以后遞增,這樣只要判斷該值就能確定是否需要升級,該值不顯示給用戶。
- android:versionName:這個是我們常說明的版本號,由三部分組成<major>.<minor>.<point>,該值是個字符串,可以顯示給用戶。
關於版本號有兩個值,如下面的例子
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.xxx.xxx"
android:versionCode="2"
android:versionName="1.1">
......
versionCode是給設備程序識別版本(升級)用的,必須是一個interger值,整數,代表app更新過多少次
versionName是給用戶看的,可以寫1.1 , 1.2等等版本
延伸出另外一個問題:當app需要校對版本的時候怎樣讀取這個值?
1、讀取manifest.xml
PackageManager pm = context.getPackageManager();//context為當前Activity上下文 PackageInfo pi = pm.getPackageInfo(context.getPackageName(), 0); version = pi.versionName;
2、在里面定義 android:versionName="@string/app_versionName" 然后在 res/values/strings.xml 里定義一個同名 string item :<string name="app_versionName">1.1</string>