将android versionname输出为字符串

Output android versionname as string

本问题已经有最佳答案,请猛点这里访问。

我在manifest.xml中设置了versionCode和versionName

1
2
android:versionCode="2"
android:versionName="Alpha 1.2"

但是如何将其输出为字符串,以便用户可以看到他们的应用程序版本是什么?
在我的"约"片段中,我尝试使用:

1
android:text="?android:attr/versionName"

但这似乎没有用。 它确实把"?android:attr / versionName"作为输出字符串。


android:text="?android:attr/versionName"

请勿在第一时间写出您不理解的标记/代码等。 这不是因为你写它或者非常希望它能够起作用而做任何魔法,即使它根本没有任何意义。

可以使用PackageManager获取Manifest中的数据

1
PackageInfo packageInfo = getPackageManager().getPackageInfo(getPackageName(), 0);

PackageInfo结构同时包含versionNameversionCode - 请参阅此处的文档。