Je souhaite utiliser les composants de l'architecture de navigation.
Mais j'ai eu un problème avec l'importation safeargs
Message de synchronisation:
Impossible de trouver androidx.navigation: safe-args-gradle-plugin: 1.0.0-alpha01. Recherche dans les endroits suivants:
https://dl.google.com/dl/Android/maven2/androidx/navigation/safe-args-gradle-plugin/1.0.0-alpha01/safe-args-gradle-plugin -1.0.0-alpha01.pom
https://dl.google.com/dl/Android/maven2/androidx/navigation/safe-args-gradle-plugin/1.0.0-alpha01/safe-args-gradle-plugin -1.0.0-alpha01.jar
https://jcenter.bintray.com/androidx/navigation/safe-args-gradle-plugin/1.0.0-alpha01/safe-args-gradle-plugin-1.0.0-alpha01 .pom
https://jcenter.bintray.com/androidx/navigation/safe-args-gradle-plugin/1.0.0-alpha01/safe-args-gradle-plugin-1.0.0-alpha01 .jar
Requis par:
projet:
J'ai suivi Ajout de composants à votre projet mais ne résout pas mon problème.
Projet: build.gradle
// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
repositories {
google()
jcenter()
}
dependencies {
classpath 'com.Android.tools.build:gradle:3.1.2'
classpath "androidx.navigation:safe-args-gradle-plugin:1.0.0-alpha01"
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
allprojects {
repositories {
google()
jcenter()
}
}
task clean(type: Delete) {
delete rootProject.buildDir
}
Module: build.gradle
apply plugin: 'com.Android.application'
apply plugin: 'androidx.navigation.safeargs'
Android {
compileSdkVersion 27
defaultConfig {
applicationId "com.mangoslab.navigation"
minSdkVersion 21
targetSdkVersion 27
versionCode 1
versionName "1.0"
testInstrumentationRunner "Android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-Android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'com.Android.support:appcompat-v7:27.1.1'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.Android.support.test:runner:1.0.2'
androidTestImplementation 'com.Android.support.test.espresso:espresso-core:3.0.2'
def nav_version = "1.0.0-alpha01"
implementation "Android.Arch.navigation:navigation-fragment:${nav_version}" // use -ktx for Kotlin
implementation "Android.Arch.navigation:navigation-ui:${nav_version}" // use -ktx for Kotlin
// optional - Test helpers
androidTestImplementation "Android.Arch.navigation:navigation-testing:${nav_version}" // use -ktx for Kotlin
}
Essayez d'ajouter
classpath "Android.Arch.navigation:navigation-safe-args-gradle-plugin:1.0.0-alpha01"
au lieu de
classpath "androidx.navigation:safe-args-gradle-plugin:1.0.0-alpha01"
vérifier les packages du référentiel Google maven
http://joxi.ru/GrqxKRgiQn1OZA
La réponse acceptée n'a pas fonctionné pour moi. Mais quand j'ai utilisé alpha 5
ça a marché
Projet build.gradle
:
classpath "Android.Arch.navigation:navigation-safe-args-gradle-plugin:1.0.0-alpha05"
tout ce qui précède n'a pas fonctionné pour moi. Je n'avais qu'à mettre apply plugin: "androidx.navigation.safeargs.kotlin"
après apply plugin: 'kotlin-Android' apply plugin: 'kotlin-kapt' apply plugin: 'kotlin-Android-extensions'
Vous pouvez maintenant utiliser le chemin de classe suivant afin d'utiliser des arguments sûrs avec AndroidX
classpath "androidx.navigation:navigation-safe-args-gradle-plugin:2.1.0-alpha02"
Pour plus de détails, vous pouvez vérifier ici
J'ai résolu ce problème en remplaçant
classpath "Android.Arch.navigation:navigation-safe-args-gradle-plugin:$version_navigation"
with classpath "androidx.navigation:navigation-safe-args-gradle-plugin:$version_navigation"
in project level build where version_navigation = "2.1.0"
Dans mon cas, j'ai dû ajouter ce plugin:
apply plugin: "androidx.navigation.safeargs.kotlin"
en bas et a parfaitement fonctionné.