Android Studioを3.2にアップグレードした後、Redactor
-> Migrate to AndroidX
を使用してAndroidXに自動移行したいのですが、このエラーが発生しました:
Androidの依存関係「androidx.media:media」には、コンパイル(1.0.0-rc01)とランタイム(1.0.0)クラスパスの異なるバージョンがあります。 DependencyResolutionを使用して同じバージョンを手動で設定する必要があります
おそらく、依存関係の1つがandroidx.media:media:1.0.0-rc1
を使用しています。 Gradleの依存関係解決戦略 を使用して、すべての依存関係に同じバージョンを強制的に使用させる必要があります。
アプリレベル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
リファクタリングにより、古いインポートが次のように変更されます。
implementation 'androidx.legacy:legacy-support-v4:1.0.0'
レガシーの依存関係を使用する予定がない場合は、代わりに以下を使用できます。
implementation 'androidx.appcompat:appcompat:1.0.0'
これにより、メディアをまったく使用していない場合にも問題が解決されます...
手動で修正してください。
依存関係を次のように変更します。
androidx.media:media:1.0.0
そして、クラスでimportsを変更します