Arguments Safe Compose : une meilleure façon de naviguer dans Jetpack Compose – Partie 3 | par Dilraj Singh | décembre 2021
Cet article sert de guide sur la façon de configurer votre projet pour inclure le processeur d’annotation de composition en tant que bibliothèque. J’ai exporté les fichiers JAR nécessaires dans le référentiel GitHub. Avant d’effectuer toute étape, assurez-vous que votre projet est configuré avec Compose. Si vous créez un nouveau projet, cela peut être fait en suivant
File -> New -> New Project -> Empty Compose Activity
dans Android Studio. Ou vous pouvez suivre le guide pour inclure Compose dans votre projet existant.
Vous devez télécharger ces fichiers jar et les placer dans le libs
dossier de votre projet. La structure du projet sera la suivante :
Project
app
libs
annotation.aar
compose-annotation-processor.jar
src
main
java
res
build.gradle
Maintenant, nous devons inclure l’officiel ksp
bibliothèque pour traiter les annotations respectives. Au app/build.gradle
, incluez le plug-in KSP comme suit :
plugins {
id 'com.android.application'
id 'kotlin-android'
id("com.google.devtools.ksp") version "1.5.30-1.0.0"
}
J’utilise la version Kotlin 1.5.30
, donc la version du plugin KSP sera 1.5.30-1.0.0
. Assurez-vous que votre version Kotlin correspond à la version KSP avant le trait d’union. La dernière version peut être trouvée ici. Sur des lignes similaires, assurez-vous que votre version de Kotlin est la même partout. Vous trouverez ci-dessous quelques exemples d’utilisation de la version Kotlin.
app/build.gradle
composeOptions {
kotlinCompilerExtensionVersion compose_version
kotlinCompilerVersion '1.5.30'
}build.gradle (project level)
ext {
compose_version = '1.0.3'
}classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.5.30"
Composer nécessite une version 1.0.3
pour la compatibilité avec la version Kotlin 1.5.30
. Ensuite, incluez la dernière version de Gson
et androidx.navigation
. Les dernières versions peuvent être trouvées dans les liens précédents. Incluez également la dépendance KSP. ça doit aller app/build.gradle
à l’intérieur de dependency
bloquer.
implementation("com.google.code.gson:gson:2.8.8")
implementation("androidx.navigation:navigation-compose:2.4.0-beta02")
implementation("com.google.devtools.ksp:symbol-processing-api:1.5.30-1.0.0")
Ensuite, nous devons inclure les fichiers JAR que nous copions et collons dans le libs
dossier.
implementation(files('libs/annotation-release.aar'))
ksp(files('libs/compose-annotation-processor.jar'))
Pour rendre notre fichier généré disponible au app
module, nous devons demander à l’IDE de gérer certains fichiers sous build
dossier visible. L’extrait suivant doit être écrit en app/build.gradle
à la racine du fichier (pas à l’intérieur de blocs).
kotlin.sourceSets.main {
kotlin.srcDirs(
file("$buildDir/generated/ksp/"),
)
}
ksp {
arg("ignoreGenericArgs", "false")
}
Ça y est, nous pouvons maintenant utiliser le processeur d’annotations Compose et les fichiers générés correspondants.
@ComposeDestination
abstract class UserPage {
abstract val id: Int
abstract val names: ArrayList<String>
}
Et utilisez ce qui suit :
Merci.
Commentaires
Laisser un commentaire