我将Android Studio升级到3.2,现在我想使用Redactor
-> Migrate to AndroidX
自动迁移到AndroidX,现在出现此错误:
Android依赖项“ androidx.media:media”具有不同的版本 编译(1.0.0-rc01)和运行时(1.0.0)类路径。你应该 通过DependencyResolution手动设置相同版本
答案 0 :(得分:7)
您的依赖项之一可能使用androidx.media:media:1.0.0-rc1
。您应该使用Gradle's Dependency Resolution Strategy来强制所有依赖项使用相同的版本。
尝试在您的应用级别build.gradle
中添加以下代码,它应该可以正常工作。
像这样:
android {
compileSdkVersion 28
defaultConfig {
// Your code
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
}
buildTypes {
// Your build types if any
}
configurations.all {
resolutionStrategy {
force 'androidx.media:media:1.0.0'
}
}
}
您还可以使用以下命令来检测哪些依赖项使用androidx.media:media
:
./gradlew :app:dependencies
答案 1 :(得分:2)
尝试手动修复。
只需将依赖项更改为:
androidx.media:media:1.0.0
并在课程中更改进口
答案 2 :(得分:2)
重构会将旧的导入内容更改为以下内容:
intent.putExtra(Intents.Scan.MODE, Intents.Scan.QR_CODE_MODE);
intent.putExtra(Intents.Scan.FORMATS, "QR_CODE");
如果您不打算使用遗留依赖性,则可能要使用以下代码:
implementation 'androidx.legacy:legacy-support-v4:1.0.0'
如果您根本不使用媒体,这也将解决此问题...
答案 3 :(得分:0)
我遇到了同样的问题,我通过使用以下方法解决了该问题:
buildscript {
ext{
kotlin_version = '1.3.0' // Old 1.2.71
...
}
最后,我将gradle版本从3.2.1更改为3.3.1:
dependencies {
classpath 'com.android.tools.build:gradle:3.3.1'
classpath 'com.google.gms:google-services:4.0.1'
...
我希望这会有所帮助。