15

将 Flutter版本升级到Flutter 1.22.0-2.0.pre.78 • channel master后,我收到以下警告:-

WARNING: [Processor] Library 'C:\Users....gradle\caches\modules-2\files-2.1\io.flutter\flutter_embedding_debug\1.0.0-b1d9f863db32cb1d6714cf75db4a992ee3765113\b8748b5192a2a0961f5c14f8845331ad5f2225a1\flutter_embedding_debug-1.0.0-b1d9f863db32cb1d6714cf75db4a992ee3765113.jar ' 包含对 AndroidX 和旧支持库的引用。这似乎图书馆已部分迁移。Jetifier 无论如何都会尝试重写库。androidX 参考示例:'androidx/annotation/VisibleForTesting' 支持库参考示例:'android/support/annotation/NonNull'`

这个问题是否会在未来引起一些严重的问题。提前致谢 :)

4

1 回答 1

4

存在此警告是因为在最新的 Flutter 版本中,新创建的项目将使用AndroidX 自动创建。

从 Flutter flutter create -t <project-type>v1.12.13 开始,默认使用 AndroidX 创建的新项目。

在此 Flutter 版本之前创建的项目不得依赖任何 旧的构建工件旧的支持库 类。

在应用程序或模块项目中,文件android/gradle.properties.android/gradle.properties必须包含:

android.useAndroidX=true
android.enableJetifier=true

该警告还指出:

This seems like the library is partially migrated. Jetifier will try to rewrite the library anyway.

这通常是由一些未迁移的插件引起的,Flutter 工具使用 Jetifier,它会使用 Support Library 自动将这些 Flutter 插件迁移到 AndroidX。

Flutter 工具使用 Jetifier 自动将使用 Support Library 的 Flutter 插件迁移到 AndroidX,因此即使它们尚未迁移到 AndroidX,您也可以使用相同的插件。

如果您在迁移到 AndroidX 时遇到其他问题,可以向 GitHub提出问题。

于 2021-11-01T16:00:18.247 回答