下面是 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+"");
}
打印结果为: