将android versionname输出为字符串

将android versionname输出为字符串,android,Android,我在manifest.xml中设置了versionCode和versionName android:versionCode="2" android:versionName="Alpha 1.2" 但我如何将其输出为字符串,以便用户可以看到他们拥有的应用程序的版本? 在我的“关于”片段中,我尝试使用: android:text="?android:attr/versionName" 但这似乎不起作用。它字面上把“?android:attr/versionName”作为输出字符串 android

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

android:versionCode="2"
android:versionName="Alpha 1.2"
但我如何将其输出为字符串,以便用户可以看到他们拥有的应用程序的版本? 在我的“关于”片段中,我尝试使用:

android:text="?android:attr/versionName"
但这似乎不起作用。它字面上把“?android:attr/versionName”作为输出字符串

android:text=“?android:attr/versionName”

请不要编写您最初不理解的标记/代码等。这不会仅仅因为你写了它或者非常希望它能工作就产生任何魔力,尤其是它毫无意义。

可以使用PackageManager从清单中获取数据

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

PackageInfo结构同时包含
versionName
versionCode
-。

我尝试过这个方法,但它无法解析PackageManager或getApplicationContext的符号,或任何符号。使用PackageManager需要哪些导入?这不是本网站的重点吗?寻找我们不了解的问题的答案?使用mAppContext、packageInfo和getPackageInfo的导入是什么?