शुरू करना

Navigation 3 का इस्तेमाल शुरू करने के लिए, लाइब्रेरी को अपने प्रोजेक्ट में जोड़ें. साथ ही, इससे जुड़ी लाइब्रेरी भी जोड़ें. यहां दी गई टेबल की मदद से तय करें कि आपको कौनसी लाइब्रेरी जोड़नी हैं:

कलाकृतियां

नाम

यह क्या करता है

आर्टफ़ैक्ट

Navigation 3 रनटाइम लाइब्रेरी

Core Navigation 3 API. इसमें NavEntry, EntryProvider, और इनसे जुड़ा डीएसएल शामिल है.

androidx.navigation3:navigation3-runtime

Navigation 3 यूज़र इंटरफ़ेस (यूआई) लाइब्रेरी

यह कॉन्टेंट दिखाने के लिए क्लास उपलब्ध कराता है. इनमें NavDisplay और Scene शामिल हैं.

androidx.navigation3:navigation3-ui

Navigation 3 के लिए ViewModel की लाइफ़साइकल

इससे ViewModels को बैक स्टैक में मौजूद एंट्री के हिसाब से स्कोप किया जा सकता है.

androidx.lifecycle:lifecycle-viewmodel-navigation3

Navigation 3 के लिए, Material 3 के अडैप्टिव लेआउट

यह NavDisplay के साथ इस्तेमाल करने के लिए, अडैप्टिव लेआउट (SceneStrategies, Scenes, और मेटाडेटा की परिभाषाएं) उपलब्ध कराता है.

androidx.compose.material3.adaptive:adaptive-navigation3

KotlinX Serialization

यह कुकी, नेविगेशन कुंजियों को क्रम से लगाने की अनुमति देती है.

प्लगिन: org.jetbrains.kotlin.plugin.serialization

लाइब्रेरी:

org.jetbrains.kotlinx:kotlinx-serialization-core

प्रोजेक्ट सेटअप करना

अपने मौजूदा प्रोजेक्ट में 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"}

इसके अलावा, अपने कंपाइल एसडीके को 36 या इसके बाद के वर्शन पर अपडेट करें:

[versions]
compileSdk = "36"

अपनी app बिल्ड फ़ाइल 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)
}