如何修复 Flutter AndroidX 不兼容问题?

Wis*_*gko 17 android gradle ios dart flutter

我刚导入webview_flutter插件,发现插件和我的flutter环境不兼容。然后使用 Android Studio,我使用“迁移到 AndroidX”选项迁移我的 AndroidX 环境。

我想使用 webview_flutter 插件来查看页面。帮助表示赞赏。

这是错误信息

在调试模式下在 Andromax B26D2H 上启动 lib/main.dart...
D8:程序类型已经存在:android.support.v4.media.MediaBrowserCompat$ItemCallback

FAILURE:构建失败,出现异常。

  • 出了什么问题:
    任务
    ':app:transformDexArchiveWithExternalLibsDexMergerForDebug'执行失败。
    com.android.builder.dexing.DexArchiveMergerException:合并 dex 档案时出错:/Users/tio/Documents/Development/firecek_2019/build/app/intermediates/transforms/dexBuilder/debug/22.jar, /Users/tio/Documents/ Development/firecek_2019/build/app/intermediates/transforms/dexBuilder/debug/105.jar, /Users/tio/Documents/Development/firecek_2019/build/app/intermediates/transforms/dexBuilder/debug/148.jar, /Users/ tio/Documents/Development/firecek_2019/build/app/intermediates/transforms/dexBuilder/debug/133.jar,/Users/tio/Documents/Development/firecek_2019/build/app/intermediates/transforms/dexBuilder/debug/72.jar , /Users/tio/Documents/Development/firecek_2019/build/app/intermediates/transforms/dexBuilder/debug/128.jar, /Users/tio/Documents/Development/firecek_2019/build/app/intermediates/transforms/dexBuilder/debug /79.jar,/Users/tio/Documents/Development/firecek_2019/build/app/intermediates/transforms/dexBuilder/debug/88.jar, /Users/tio/Documents/Development/firecek_2019/build/app/intermediates/transforms/dexBuilder/debug/ 110.jar、/Users/tio/Documents/Development/firecek_2019/build/app/intermediates/transforms/dexBuilder/debug/67.jar、/Users/tio/Documents/Development/firecek_2019/build/app/intermediates/transforms/ dexBuilder/debug/120.jar、/Users/tio/Documents/Development/firecek_2019/build/app/intermediates/transforms/dexBuilder/debug/91.jar、/Users/tio/Documents/Development/firecek_2019/build/app/ middles/transforms/dexBuilder/debug/102.jar、/Users/tio/Documents/Development/firecek_2019/build/app/intermediates/transforms/dexBuilder/debug/6.jar、/Users/tio/Documents/Development/firecek_2019/ build/app/intermediates/transforms/dexBuilder/debug/118.jar,/Users/tio/Documents/Development/firecek_2019/build/app/intermediates/transforms/dexBuilder/debug/5.jar, /Users/tio/Documents/Development/firecek_2019/build/app/intermediates/transforms/dexBuilder/debug/ 52.jar、/Users/tio/Documents/Development/firecek_2019/build/app/intermediates/transforms/dexBuilder/debug/58.jar、/Users/tio/Documents/Development/firecek_2019/build/app/intermediates/transforms/ dexBuilder/debug/43.jar、/Users/tio/Documents/Development/firecek_2019/build/app/intermediates/transforms/dexBuilder/debug/127.jar、/Users/tio/Documents/Development/firecek_2019/build/app/ middles/transforms/dexBuilder/debug/142.jar、/Users/tio/Documents/Development/firecek_2019/build/app/intermediates/transforms/dexBuilder/debug/151.jar、/Users/tio/Documents/Development/firecek_2019/ build/app/intermediates/transforms/dexBuilder/debug/19.jar,/Users/tio/Documents/Development/firecek_2019/build/app/intermediates/transforms/dexBuilder/debug/34.jar, /Users/tio/Documents/Development/firecek_2019/build/app/intermediates/transforms/dexBuilder/debug/ 46.jar、/Users/tio/Documents/Development/firecek_2019/build/app/intermediates/transforms/dexBuilder/debug/63.jar、/Users/tio/Documents/Development/firecek_2019/build/app/intermediates/transforms/ dexBuilder/debug/107.jar、/Users/tio/Documents/Development/firecek_2019/build/app/intermediates/transforms/dexBuilder/debug/9.jar、/Users/tio/Documents/Development/firecek_2019/build/app/ middles/transforms/dexBuilder/debug/31.jar、/Users/tio/Documents/Development/firecek_2019/build/app/intermediates/transforms/dexBuilder/debug/15.jar、/Users/tio/Documents/Development/firecek_2019/ build/app/intermediates/transforms/dexBuilder/debug/115.jar,/Users/tio/Documents/Development/firecek_2019/build/app/intermediates/transforms/dexBuilder/debug/70.jar, /Users/tio/Documents/Development/firecek_2019/build/app/intermediates/transforms/dexBuilder/debug/ 62.jar,
    https://developer.android.com/studio/build/dependencies#duplicate_classes了解如何解决该问题。
    程序类型已存在:android.support.v4.media.MediaBrowserCompat$ItemCallback

  • 尝试:
    使用 --stacktrace 选项运行以获取堆栈跟踪。使用 --info 或 --debug 选项运行以获得更多日志输出。使用 --scan 运行以获得完整的见解。

  • https://help.gradle.org获取更多帮助

在 4m 59s 内构建失败 ********************************************* ********************************************** Gradle 失败可能一直是因为这个 Flutter 应用程序中的 AndroidX 不兼容。
请参阅https://flutter.dev/docs/development/packages-and-plugins/androidx-compatibility以获取有关该问题以及如何修复它的更多信息。


Gradle 任务 assembleDebug 失败,退出代码 1
Exited (sigterm)

Wis*_*gko 22

谢谢你的建议

我通过执行以下步骤修复了它: 1. 尝试在您的项目文件夹> android > app > build.gradle 中添加这一行,添加以下行

在 defaultConfig 里面

  1. 然后在 android/build.gradle 文件中升级 gradle 依赖项:classpath 'com.android.tools.build:gradle:3.3.1'(之前版本是 3.2.1)

  2. 运行 flutter clean 并重建您的项目


Sam*_*ani 8

首先确保 pubspec.yaml 中的所有包都是最新版本。然后用 android studio 打开你的 flutter 应用程序的 android 项目,选择 Refactor->Migrate to Androidx(确保你是从 android 项目而不是从 flutter 项目中做的)。等待 android studio 完成您的项目迁移,重建您的项目。希望能帮助到你!


Par*_*iya 8

总结解决问题的更改:

启用多索引。

转到[project_folder]/app/build.gradle并添加以下行。

defaultConfig {
    ...
    multiDexEnabled true
}
Run Code Online (Sandbox Code Playgroud)

启用 Jetifier

转到[project_folder]/android/app/gradle.properties并添加以下行。

android.useAndroidX=true
android.enableJetifier=true
Run Code Online (Sandbox Code Playgroud)