बिल ऑफ़ मटीरियल का इस्तेमाल करना

Compose Bill of Materials (बीओएम) की मदद से अपनी सारी Compose लाइब्रेरी मैनेज की जा सकती है सिर्फ़ बीओएम का वर्शन. BOM के पास खुद ही इसके स्टेबल वर्शन से लिंक है अलग-अलग लाइब्रेरी को इस तरह से लिखें कि वे साथ मिलकर बेहतर तरीके से काम करें. टास्क कब शुरू होगा अपने ऐप्लिकेशन में BOM का उपयोग करके, आपको किसी भी वर्शन को खुद Compose लाइब्रेरी डिपेंडेंसी के लिए इस्तेमाल कर सकता है. जब आप बीओएम वर्शन, इस्तेमाल की जा रही सभी लाइब्रेरी अपने-आप अपडेट हो जाती हैं लॉन्च करने के लिए किया जा सकता है.

Kotlin

dependencies {
    // Specify the Compose BOM with a version definition
    val composeBom = platform("androidx.compose:compose-bom:2024.06.00")
    implementation(composeBom)
    testImplementation(composeBom)
    androidTestImplementation(composeBom)

    // Specify Compose library dependencies without a version definition
    implementation("androidx.compose.foundation:foundation")
    // ..
    testImplementation("androidx.compose.ui:ui-test-junit4")
    // ..
    androidTestImplementation("androidx.compose.ui:ui-test")
}

ग्रूवी

dependencies {
    // Specify the Compose BOM with a version definition
    Dependency composeBom = platform('androidx.compose:compose-bom:2024.06.00')
    implementation composeBom
    testImplementation composeBom
    androidTestImplementation composeBom

    // Specify Compose library dependencies without a version definition
    implementation 'androidx.compose.foundation:foundation'
    // ..
    testImplementation 'androidx.compose.ui:ui-test-junit4'
    // ..
    androidTestImplementation 'androidx.compose.ui:ui-test'
}

यह जानने के लिए कि Compose के कौनसे वर्शन को किसी खास BOM वर्शन के साथ मैप किया गया है, लाइब्रेरी वर्शन मैपिंग के लिए BOM देखें.

Compose कंपाइलर लाइब्रेरी को बीओएम में शामिल क्यों नहीं किया गया है?

Compose Kotlin कंपाइलर एक्सटेंशन (androidx.compos.compiler) को लिंक नहीं किया गया है 'लिखें' लाइब्रेरी वर्शन में इसके बजाय, यह Kotlin के वर्शन से लिंक होता है प्लगिन को कंपाइल करके उसे Compose के बाकी हिस्सों से अलग समय में रिलीज़ किया गया पक्का करें कि आपके पास Kotlin के वर्शन के साथ काम करने वाला वर्शन हो. आपने लोगों तक पहुंचाया मुफ़्त में Compose पर जाएं और प्लगिन के हर वर्शन को मैप करने वाला Kotlin वर्शन ढूंढ सकता है Kotlin कंपैटबिलिटी मैप में.

मैं बीओएम में तय किए गए वर्शन से अलग, लाइब्रेरी का कोई दूसरा वर्शन कैसे इस्तेमाल करूं?

build.gradle डिपेंडेंसी सेक्शन में, बीओएम का इंपोर्ट बनाए रखें प्लैटफ़ॉर्म. लाइब्रेरी डिपेंडेंसी इंपोर्ट पर, अपनी पसंद का वर्शन डालें. इसके लिए उदाहरण के लिए, यहां बताया गया है कि निर्भरता के अनुसार, यदि आप एनिमेशन लाइब्रेरी के नए वर्शन का उपयोग करना चाहते हैं, तो नहीं इस बात से फ़र्क़ पड़ता है कि बीओएम में कौनसा वर्शन तय किया गया है:

Kotlin

dependencies {
    // Specify the Compose BOM with a version definition
    val composeBom = platform("androidx.compose:compose-bom:2024.06.00")
    implementation(composeBom)

    // Override the BOM version when needed
    implementation("androidx.compose.animation:animation:1.7.0-beta05")

    // ..
}

ग्रूवी

dependencies {
    // Specify the Compose BOM with a version definition
    Dependency composeBom = platform("androidx.compose:compose-bom:2024.06.00")
    implementation composeBom

    // Override the BOM version when needed
    implementation 'androidx.compose.animation:animation:1.7.0-beta05'

    // ..
}

क्या BOM, Compose की सभी लाइब्रेरी को मेरे ऐप्लिकेशन में अपने-आप जोड़ देता है?

नहीं. असल में, अपने ऐप्लिकेशन में Compose लाइब्रेरी जोड़ने और इस्तेमाल करने के लिए, आपको हर एक के बारे में एलान करना होगा लाइब्रेरी को आपके मॉड्यूल (ऐप्लिकेशन-लेवल) की Gradle फ़ाइल में, एक अलग डिपेंडेंसी लाइन के तौर पर जोड़ना (आम तौर पर app/build.gradle).

BOM का इस्तेमाल करने से यह पक्का होता है कि आपके ऐप्लिकेशन में किसी भी Compose लाइब्रेरी के वर्शन के साथ काम करता है, लेकिन BOM असल में उन Compose लाइब्रेरी को है.

आने वाले समय में, Compose की लाइब्रेरी में मौजूद वर्शन अलग-अलग होंगे. इसका मतलब है कि वर्शन नंबर अपने हिसाब से बढ़ने लगेंगे. नया ब्लॉग हर लाइब्रेरी की स्टेबल रिलीज़ को टेस्ट किया जाता है और यह अच्छी तरह से काम करने की गारंटी देता है हैं बेमिसाल. हालांकि, हर लाइब्रेरी के नए और स्थिर वर्शन को ढूंढने के लिए, मुश्किल है, और बीओएम इन नए वर्शन को अपने-आप इस्तेमाल करने में आपकी मदद करता है.

क्या मेरे लिए बीओएम का इस्तेमाल करना ज़रूरी है?

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

क्या बीओएम, वर्शन कैटलॉग के साथ काम करता है?

हां. आपके पास बीओएम को वर्शन कैटलॉग में शामिल करने का विकल्प है. लाइब्रेरी के वर्शन लिखें:

[libraries]
androidx-compose-bom = { group = "androidx.compose", name = "compose-bom", version.ref = "androidxComposeBom" }
androidx-compose-foundation = { group = "androidx.compose.foundation", name = "foundation" }

अपने मॉड्यूल के build.gradle में बीओएम को इंपोर्ट करना न भूलें:

Kotlin

dependencies {
    val composeBom = platform(libs.androidx.compose.bom)
    implementation(composeBom)
    androidTestImplementation(composeBom)

    // import Compose dependencies as usual
}

ग्रूवी

dependencies {
    Dependency composeBom = platform(libs.androidx.compose.bom)
    implementation composeBom
    androidTestImplementation(composeBom)

    // import Compose dependencies as usual
}

मैं किसी समस्या की शिकायत कैसे करूं या बीओएम पर सुझाव या राय कैसे दूं?

आप हमारे समस्या ट्रैकर पर समस्याओं की शिकायत कर सकते हैं.