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;

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

猜你在找的技术问答相关文章

如何检查配对的蓝牙设备是打印机还是扫描仪(Android)
是否允许实体正文进行HTTP DELETE请求?
如何将ZipInputStream转换为InputStream?
java.util.logging Java 8中的变量
PowerMockito.doReturn返回null
Java中的RESTful调用
Swing / Java:如何正确使用getText和setText字符串
特殊字符和重音字符
Android Studio中的ndk.dir错误
错误“找不到主类”