升级到Flutter 3.19.0后,我在Android上运行我的应用程序时出现以下错误,它在iOS上工作正常,当我在Android Studio中只打开Android目录并运行该项目时,它也工作正常.

ERROR:D8: com.android.tools.r8.kotlin.H
ERROR:D8: com.android.tools.r8.kotlin.H
ERROR:D8: com.android.tools.r8.kotlin.H
ERROR:D8: com.android.tools.r8.kotlin.H

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:mergeExtDexDebug'.
> Could not resolve all files for configuration ':app:debugRuntimeClasspath'.
   > Failed to transform firebase-auth-22.3.1.aar (com.google.firebase:firebase-auth:22.3.1) to match attributes {artifactType=android-dex, asm-transformed-variant=NONE, dexing-enable-desugaring=true, dexing-enable-jacoco-instrumentation=false, dexing-is-debuggable=true, dexing-min-sdk=23, org.gradle.category=library, org.gradle.libraryelements=jar, org.gradle.status=release, org.gradle.usage=java-runtime}.
      > Execution failed for DexingWithClasspathTransform: /home/munsif/.gradle/caches/transforms-3/ba579288272952d282e3eb784bb3facc/transformed/jetified-firebase-auth-22.3.1-runtime.jar.
         > Error while dexing.
   > Failed to transform play-services-location-21.1.0.aar (com.google.android.gms:play-services-location:21.1.0) to match attributes {artifactType=android-dex, asm-transformed-variant=NONE, dexing-enable-desugaring=true, dexing-enable-jacoco-instrumentation=false, dexing-is-debuggable=true, dexing-min-sdk=23, org.gradle.category=library, org.gradle.libraryelements=jar, org.gradle.status=release, org.gradle.usage=java-runtime}.
      > Execution failed for DexingWithClasspathTransform: /home/munsif/.gradle/caches/transforms-3/c40ae925c2dff28a07b701244ea18adb/transformed/jetified-play-services-location-21.1.0-runtime.jar.
         > Error while dexing.
   > Failed to transform recaptcha-18.4.0.aar (com.google.android.recaptcha:recaptcha:18.4.0) to match attributes {artifactType=android-dex, asm-transformed-variant=NONE, dexing-enable-desugaring=true, dexing-enable-jacoco-instrumentation=false, dexing-is-debuggable=true, dexing-min-sdk=23, org.gradle.status=release, org.gradle.usage=java-runtime}.
      > Execution failed for DexingWithClasspathTransform: /home/munsif/.gradle/caches/transforms-3/6a9b2598905fd8f95f3e5a4db9115179/transformed/jetified-recaptcha-18.4.0-runtime.jar.
         > Error while dexing.
   > Failed to transform kotlin-stdlib-1.9.0.jar (org.jetbrains.kotlin:kotlin-stdlib:1.9.0) to match attributes {artifactType=android-dex, asm-transformed-variant=NONE, dexing-enable-desugaring=true, dexing-enable-jacoco-instrumentation=false, dexing-is-debuggable=true, dexing-min-sdk=23, org.gradle.category=library, org.gradle.libraryelements=jar, org.gradle.status=release, org.gradle.usage=java-runtime}.
      > Execution failed for DexingWithClasspathTransform: /home/munsif/.gradle/caches/transforms-3/ae0183353754275aa55a66ddf2de48d6/transformed/jetified-kotlin-stdlib-1.9.0.jar.
         > Error while dexing.

我try 将这些添加到gradle.properties中

android.useAndroidX=true
android.enableJetifier=true

在build.gradle中启用这样的多索引:

android {
    defaultConfig {
        ...
        multiDexEnabled true
    }
}

将此行添加到build.gradle

implementation 'com.android.support:multidex:1.0.3'

所有这些方法都没有解决我的问题: 这个问题有什么解决办法吗?

推荐答案

更改编译器SdkVersion解决了我的问题.

我在安卓/APP/build.gradle改变了compileSdkVersion

从…

 compileSdkVersion flutter.compileSdkVersion

compileSdkVersion 33

错误也就消失了.

EDIT:

当我将编译SDK更改为34时,我得到了同样的问题,Ffltter推荐了我,因为我使用的是url_Launcher和Video_Player,这两个程序使用的是编译器Sdk 34.当我将编译器SdkVersion更改为34时,我再次遇到同样的问题,并通过将minSdkVersion从21更改为24来解决问题

Change 从…

minSdkVersion 21

minSdkVersion 24

感谢Johnyp

Flutter相关问答推荐

从底部开始固定,然后使其可拖曳Flutter

如何处理Flutter Riverpod异步通知器中的状态和数据库

Ffltter:发布版本中的Path NotFoundException

如何删除使用isscllable时出现的左边距?

Flutter /dart 列表.第一个子类列表中的Where()错误

Ffltter Firebase向用户添加公司

如何在Dart中允许正则表达式中有一个空格,但允许其他字符为1或更多?

如何更改Flutter 中文本的混合模式?

Flutter:我的应用程序是否需要包含退款购买?

是否可以在 flutter 应用程序中使用 jetpack compose?

MediaQuery 在不同手机上不一致

从子集合sem中获取参考学年&&课程名称的值

如何为文本主题设置多种 colored颜色 ?

按下 Command+W 时关闭窗口

出现错误;运算符[]不是为对象类型定义的?功能()'

我的主屏幕上的 FutureBuilder 不断重新加载(但仅在其他屏幕上时)?

使用 Firebase/Flutter 进行应用判断 - 100% 无效请求

为什么这个参数类型不能分配给参数类型?

如何从dart 中的当前日期时间中减go 1 天?

Flutter Firebase 可以在真实设备上运行,而不是在 Android 模拟器上运行