برای شروع کار با Navigation 3، کتابخانه را به همراه کتابخانههای پشتیبان به پروژه خود اضافه کنید. از جدول زیر برای تصمیمگیری در مورد کتابخانههای مورد نیاز استفاده کنید.
مصنوعات
نام | چه کاری انجام میدهد؟ | مصنوع |
|---|---|---|
کتابخانه زمان اجرای ناوبری ۳ | رابط برنامهنویسی کاربردی هسته ناوبری ۳. شامل | androidx.navigation3:navigation3-زمان اجرا |
کتابخانه رابط کاربری ناوبری ۳ | کلاسهایی برای نمایش محتوا، از جمله | androidx.navigation3:navigation3-ui |
چرخه حیات ViewModel برای ناوبری ۳ | به ViewModelها اجازه میدهد تا به ورودیهای موجود در back stack محدود شوند. | androidx.lifecycle:lifecycle-viewmodel-navigation3 |
طرحبندیهای تطبیقی متریال ۳ برای ناوبری ۳ | طرحبندیهای تطبیقی (SceneStrategies، Scenes و تعاریف فراداده) را برای استفاده با NavDisplay ارائه میدهد. | androidx.compose.material3.adaptive:adaptive-navigation3 |
اجازه میدهد کلیدهای ناوبری سریالسازی شوند. | افزونه: 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.1.21"
kotlinxSerializationCore = "1.8.1"
material3AdaptiveNav3 = "1.3.0-alpha04"
[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)
}