web-dev-qa-db-fra.com

Migration vers AndroidX

J'ai mis à niveau mon Android Studio vers la version 3.2 et je souhaite maintenant migrer automatiquement vers AndroidX à partir de Redactor-> Migrate to AndroidX et voici le message d'erreur suivant:

Dépendance Android 'androidx.media:media' a une version différente pour chemin de classe compile (1.0.0-rc01) et runtime (1.0.0). Vous devriez définir manuellement la même version via DependencyResolution

5
Amir

Probablement une de vos dépendances utilise androidx.media:media:1.0.0-rc1. Vous devez utiliser Stratégie de résolution de dépendance de Gradle pour forcer toutes les dépendances à utiliser la version dont vous avez besoin.
Essayez d'ajouter le code ci-dessous dans votre niveau d'application build.gradle et cela devrait fonctionner. Quelque chose comme ce qui suit:

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'
        }
    }
}

Vous pouvez également utiliser cette commande pour détecter laquelle de vos dépendances utilise androidx.media:media:

./gradlew :app:dependencies
3
Hamed Momeni

Essayez de le réparer manuellement.

Il suffit de changer la dépendance pour:

androidx.media:media:1.0.0

Et changez importe dans vos classes

2

Le refactoring modifiera les anciennes importations comme suit:

implementation 'androidx.legacy:legacy-support-v4:1.0.0'

Vous voudrez peut-être utiliser ce qui suit si vous ne prévoyez pas utiliser de dépendances héritées:

implementation 'androidx.appcompat:appcompat:1.0.0'

Cela supprimera également le problème si vous n'utilisez pas du tout les médias ...

1
prom85