由于需要取得应用的版本号和版本名称,因此通过通过以下代码来获取版本:
PackageManager manager = getPackageManager(); PackageInfo info = null; try { info = manager.getPackageInfo(getPackageName(), 0); } catch (PackageManager.NameNotFoundException e) { e.printStackTrace(); } String version = info.versionName; int version_code = info.versionCode;但是发现取得的version和version_code与AndroidManifest文件中的版本不一致。后来发现,在build.gradle文件中也有版本号和版本名称,当 果build.gradle中的版本号与AndroidManifest文件中的版本号不一致,在代码中取得的版本号会取build.gradle中的版本号。因此删去build.gradle文件中的版本号即可。
在build.gradle文件中,删除以下代码中带下划线的部分即可:
defaultConfig { applicationId "com.xxx" minSdkVersion 15 targetSdkVersion 23 versionCode 1 versionName "1" }