Android SDK 28-PackageInfo中的versionCode已弃用

问题描述

它说明了如何对Java文档进行操作(我建议不要过多使用Kotlin文档;它的维护不佳):

版本代码

API级别28中不推荐使用此字段。请改用getLongVersionCode(),它包括this和附加的versionCodeMajor属性。该程序包的版本号,由标记的versionCode属性指定。

不过,这是一种API 28方法,因此请考虑使用PackageInfoCompat。它有一个静态方法

getLongVersionCode(PackageInfo info)

解决方法

我刚刚将我的应用程序升级compileSdkVersion28(Pie)。

我收到编译警告:

警告:PackageInfo中的[deprecation] versionCode已被弃用

警告来自以下代码:

final PackageInfo info = context.getPackageManager().getPackageInfo(context.getPackageName(),0);
int versionCode = info.versionCode;

我看了一下文档,但没有说明如何解决此问题或应使用什么代替已弃用的字段。