برای شروع کار با Navigation 3، کتابخانه را به همراه کتابخانههای پشتیبان به پروژه خود اضافه کنید. از جدول زیر برای تصمیمگیری در مورد کتابخانههای مورد نیاز استفاده کنید:
مصنوعات
نام | چه کاری انجام میدهد؟ | مصنوع |
|---|---|---|
کتابخانه زمان اجرای ناوبری ۳ | رابط برنامهنویسی کاربردی هسته ناوبری ۳. شامل | |
کتابخانه رابط کاربری ناوبری ۳ | کلاسهایی برای نمایش محتوا، از جمله | |
چرخه حیات ViewModel برای ناوبری ۳ | به ViewModelها اجازه میدهد تا به ورودیهای موجود در back stack محدود شوند. | |
طرحبندیهای تطبیقی متریال ۳ برای ناوبری ۳ | طرحبندیهای تطبیقی (SceneStrategies، Scenes و تعاریف فراداده) را برای استفاده با NavDisplay ارائه میدهد. | |
اجازه میدهد کلیدهای ناوبری سریالسازی شوند. | افزونه: org.jetbrains.kotlin.plugin.serialization کتابخانه: org.jetbrains.kotlinx:هسته سریالسازی kotlinx |
راهاندازی پروژه
برای افزودن کتابخانه Navigation 3 به پروژه موجود خود، کد زیر را به libs.versions.toml اضافه کنید:
[versions]
nav3Core = "1.0.0"
lifecycleViewmodelNav3 = "2.10.0"
kotlinSerialization = "2.2.21"
kotlinxSerializationCore = "1.9.0"
material3AdaptiveNav3 = "1.3.0-alpha05"
[libraries]
# Core Navigation 3 libraries
androidx-navigation3-runtime = { module = "androidx.navigation3:navigation3-runtime", version.ref = "nav3Core" }
androidx-navigation3-ui = { module = "androidx.navigation3:navigation3-ui", version.ref = "nav3Core" }
# Optional add-on libraries
androidx-lifecycle-viewmodel-navigation3 = { module = "androidx.lifecycle:lifecycle-viewmodel-navigation3", version.ref = "lifecycleViewmodelNav3" }
kotlinx-serialization-core = { module = "org.jetbrains.kotlinx:kotlinx-serialization-core", version.ref = "kotlinxSerializationCore" }
androidx-material3-adaptive-navigation3 = { group = "androidx.compose.material3.adaptive", name = "adaptive-navigation3", version.ref = "material3AdaptiveNav3" }
[plugins]
# Optional plugins
jetbrains-kotlin-serialization = { id = "org.jetbrains.kotlin.plugin.serialization", version.ref = "kotlinSerialization"}
همچنین، SDK کامپایل خود را به ۳۶ یا بالاتر بهروزرسانی کنید:
[versions]
compileSdk = "36"
کد زیر را به فایل ساخت برنامه خود، app/build.gradle.kts اضافه کنید:
plugins {
...
// Optional, provides the @Serialize annotation for autogeneration of Serializers.
alias(libs.plugins.jetbrains.kotlin.serialization)
}
dependencies {
...
implementation(libs.androidx.navigation3.ui)
implementation(libs.androidx.navigation3.runtime)
implementation(libs.androidx.lifecycle.viewmodel.navigation3)
implementation(libs.androidx.material3.adaptive.navigation3)
implementation(libs.kotlinx.serialization.core)
}