首页 > 解决方案 > Flutter 项目和 Android X 迁移问题

问题描述

我刚刚创建了一个新的颤振项目,添加了一些插件,并且我将插件切换到了 android x,因此我需要切换到 android x。我已经尝试了所有不同的方式来迁移到 android x,但到目前为止没有一个对我有用。现在我什至不知道该做什么了,太令人沮丧了,为什么在自动创建新项目时不处理这个问题。可能在项目中使用离子。

标签: androidflutterandroidx

解决方案


当您创建一个新项目时,只需按照@harsh 的回答即可完成。

然而,由于我最近升级了我现有的应用程序以使用新插件,我也不得不迁移到 AndroidX ......并且官方说明中的默认程序不起作用,即使用 Android Studio 迁移项目 - 它说“没有找到用法!”。

所以我所做的是:

  1. 将 Android Studio 更新到 3.3
  2. 尝试菜单重构>迁移到AndroidX
  3. 得到“没有找到用法”(如果你设法在这里做,停下来!你已经完成了!......实际上,你可以在继续之前尝试这个答案)
  4. 打开android/gradle.properties并添加
android.useAndroidX=true
android.enableJetifier=true
  1. 打开android/build.gradle和改变

    • com.android.tools.build:gradle到版本3.3.0
    • com.google.gms:google-services到版本4.2.0
  2. 打开android/app/build.gradle

    • 改为compileSdkVersion_28
    • 替换android.support.test.runner.AndroidJUnitRunnerandroidx.test.runner.AndroidJUnitRunner
    • 替换com.android.support.test:runnerandroidx.test:runner:1.1.0
    • 替换com.android.support.test.espresso:espresso-coreandroidx.test.espresso:espresso-core:3.1.0
    • 就我而言,就是这样,但这是所需替换的完整列表
  3. 打开android/gradle/wrapper/gradle-wrapper.properties并更改distributionUrlhttps\://services.gradle.org/distributions/gradle-4.10.2-all.zip (您可能必须使用 5.4.1,请参阅下面的更新)

  4. 执行flutter clean

与我的预期相反,它起作用了!:)

更新(2019 年 10 月 27 日)

将我的应用程序更新为 flutterv1.9.1+hotfix.5时,当我使用应用程序签名时,我遇到了错误SigningConfig "release" is missing required property "storePassword",最后它是上面第 7 步中的 gradle 版本。所以现在我按照这个wiki中的建议使用5.4.1

[android/gradle/wrapper/gradle-wrapper.properties]

distributionUrl=https\://services.gradle.org/distributions/gradle-5.4.1-all.zip

推荐阅读