今天需要获取Mainifest.xml文件中的版本号,记得上一次很轻松就获取到了,这次却怎么都获取不到。比如:
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.xxxxxx" android:versionCode="2"
android:versionName="2.0.1">?
使用
PackageInfo info= pm.getPackageInfo(getPackageName(),PackageManager.GET_ACTIVITIES);
return info.versionName;
返回的一直是1.0,无论你将android:versionName="?" 改为?3 还是4 ,但是得到的结果总是1.0,直到查看了build.gradle文件配置:
defaultConfig {
applicationId "com.example.mobileguard"
minSdk 28
targetSdk 28
android:versionCode="1"
android:versionName="1.0"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
}
得到的1.0的值,其实是这里的配置信息。
有两种解决方案:
1? 在这里更改数据,更改完后记得要同步哦:比如
?android:versionCode="2" android:versionName="2.0"
2? 删除build.gradle文件中配置,进行同步,然后在Mainifest.xml文件中配置,例如:
?<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.xxxxxx" android:versionCode="2" android:versionName="2.0">?
问题完美解决。?
|