项目从Flutter 3.0.5升级到3.3.10后,Flutter Android构建失败

k4aesqcs  于 2023-02-02  发布在  Android
关注(0)|答案(1)|浏览(299)

我在2022年2月1日flutter升级到最新稳定版本后遇到了这个问题,我已经一年没有升级我的flutter项目了,我想添加新的包,需要最新的Android编译版本33,所以我升级了flutter和dart以匹配新的依赖项
升级项目时遵循的步骤
1.Flutter通道稳定
1.Flutter升级

  1. Flutter 刮刀
  2. flutter酒吧过时
  3. flutter pub升级--主要版本
    1.抖动发布高速缓存修复
  4. flutter clean && flutter酒吧获取
    1.Flutter构造apk
    在这一点上,我知道我已经做了所有的重要步骤,需要升级我的Flutter项目,但有一些遗漏,造成了这么多的问题。
Execution failed for task ':app:checkReleaseDuplicateClasses'.
> A failure occurred while executing com.android.build.gradle.internal.tasks.CheckDuplicatesRunnable
   > Duplicate class androidx.lifecycle.ViewModelLazy found in modules jetified-lifecycle-viewmodel-ktx-2.3.1-runtime (androidx.lifecycle:lifecycle-viewmodel-ktx:2.3.1) and lifecycle-viewmodel-2.5.1-runtime (androidx.lifecycle:lifecycle-viewmodel:2.5.1)
     Duplicate class androidx.lifecycle.ViewTreeViewModelKt found in modules jetified-lifecycle-viewmodel-ktx-2.3.1-runtime (androidx.lifecycle:lifecycle-viewmodel-ktx:2.3.1) and lifecycle-viewmodel-2.5.1-runtime (androidx.lifecycle:lifecycle-viewmodel:2.5.1)
Go to the documentation to learn how to <a href="d.android.com/r/tools/classpath-sync-errors">Fix dependency resolution errors</a>.```
gojuced7

gojuced71#

因此,我首先在项目pubspec.yaml文件中升级了dart SDK版本

environment:
  sdk: '>=2.17.1 <3.0.0'

environment:
  sdk: '>=2.19.0 <3.0.0'

然后我在android/build.gradle文件中更新了我的Kotlin版本

buildscript {
    ext.kotlin_version = '1.6.10'

buildscript {
    ext.kotlin_version = '1.7.10'

同一文件中的一些gradle依赖项

dependencies {
        classpath 'com.android.tools.build:gradle:4.1.0'
        classpath 'com.google.gms:google-services:4.3.10'
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
        classpath 'com.huawei.agconnect:agcp:1.4.2.301'
    }

dependencies {
        classpath 'com.android.tools.build:gradle:7.2.0'
        classpath 'com.google.gms:google-services:4.3.10'
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
        classpath 'com.huawei.agconnect:agcp:1.5.2.300'
    }

现在介绍android/app/build.gradle文件中的主要更改,我已更新android编译和目标SDK版本,根据我的知识,它们应该相同,并在项目中添加了生命周期视图模型依赖项以修复此问题

android {
 compileSdkVersion 33

    sourceSets {
        main.java.srcDirs += 'src/main/kotlin'
    }

    defaultConfig {
        applicationId "YOUR_BUNDLE_ID"
        minSdkVersion 21
        targetSdkVersion 33
        versionCode flutterVersionCode.toInteger()
        versionName flutterVersionName
    }

dependencies {
    implementation 'androidx.lifecycle:lifecycle-viewmodel-ktx:2.4.0'

相关问题