我在Android Studio中有一个Flutter项目。我正计划迁移到 AndroidX 。每当我重构->迁移到AndroidX 时,Android Studio都会显示错误消息:
您需要在模块build.gradle中将compileSdk设置为至少28,才能迁移到AndroidX。
但是我已经在我的 app / gradle.build 文件中设置了 compileSdkVersion 28 。
还有什么需要做的吗?
答案 0 :(得分:6)
最后我能够解决我的问题...
安装了Goolge Play服务后,我做了Refator->迁移到AndroidX ...,它开始起作用。
注意: 从步骤2中打开的项目窗口中进行重构 。
希望它将对某人有所帮助...
答案 1 :(得分:3)
这是我摆脱“ compileSdkVersion 28”错误的方法。但是在以这种方式解决之前,我从3.4.1-> 3.5.1升级了Android Studio IDE。我不确定这是否真的需要。因此,无论您使用哪种版本的IDE,请查看是否可以使用以下步骤来解决它。
转到“项目结构”-(IDE右上角的AVD Manager图标左侧的第二个图标)
在左侧导航下的“项目结构”对话框中,单击“项目设置”->“模块”
选择“模块”后,在右窗格中,您应该看到3个选项卡“源,路径,依赖项”
单击Dependencies,如果遇到compileSdkVersion 28错误,则Dependencies下的SDK版本指向低于28的版本->选择28或更高
单击“确定”
现在重构->迁移到AndroidX对我有用
答案 2 :(得分:2)
在gradle.build(应用程序)中添加此
compileSdkVersion 28
defaultConfig {
......
minSdkVersion 21
targetSdkVersion 28
......
}
使用androidx需要一些实现:-
implementation 'androidx.appcompat:appcompat:1.1.0-alpha01'
implementation 'androidx.legacy:legacy-support-v4:1.0.0'
并将以下两行添加到gradle.properties中:-
android.useAndroidX=true
android.enableJetifier=true
答案 3 :(得分:0)
我遇到了完全相同的问题。由于所有新的firebase内容都在强制迁移,因此一直在尝试进行迁移,但是当前的升级指南很少。首先,我尝试使用大量插件对项目进行备份,并不断出现该错误,然后我创建了一个带有所有最新(开发渠道)的全新flutter项目,然后执行每个步骤,检查了每个细节,阅读了每个论坛,但是仍然出现“您需要在模块build.gradle中将compileSdk设置为至少28,才能迁移到AndroidX。” ... 也匹配了https://androidxhackathon.blogspot.com/2018/05/refactor-to-android-x.html中的步骤,因此无法正确重构。 甚至去了File> ProjectStructure> Project SDK并设置为Android API 28 Platform。 有人知道我们可能会缺少什么吗?山姆,你有运气吗?
答案 4 :(得分:0)
单击“使缓存无效/从文件重新启动”选项对我有用
答案 5 :(得分:0)
android.useAndroidX=true
android.enableJetifier=true
答案 6 :(得分:0)
尝试使用以下方法替换app / build.gradle中dependencies {...}
中的默认值:
dependencies {
testImplementation 'junit:junit:4.12'
androidTestImplementation 'androidx.test:runner:1.1.0-alpha4'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.1.0-alpha4'
}
替换内容与该链接的“不推荐...”部分中发布的内容类似:https://flutter.dev/docs/development/packages-and-plugins/androidx-compatibility
如果您可以解释为什么这样做,请添加评论。谢谢!
答案 7 :(得分:0)
转到“文件”菜单中的“项目结构”。清除您在那里看到的每个问题,例如 设置android sdk,修复指定的问题
答案 8 :(得分:0)
一个简单的解决方案。 遵循步骤。
在android-> app-> build.gradle中添加以下几行, 更新defaultConfig
minSdkVersion 19
targetSdkVersion 28
multiDexEnabled true
希望它现在可以工作...