إعداد المكوّن الإضافي Compose Compiler Gradle

بالنسبة إلى Gradle، استخدِم المكوّن الإضافي Compose Compiler Gradle لإعداد Compose وضبطه.

الإعداد باستخدام كتالوجات إصدارات Gradle

يمكنك إعداد المكوّن الإضافي Compose Compiler Gradle باتّباع الخطوات التالية:

  1. في ملف libs.versions.toml ، أزِل أي إشارة إلى مجمّع Compose.
  2. في قسمَي versions وplugins ، أضِف التبعية الجديدة:

    [versions]
    kotlin = "2.3.21"
    
    [plugins]
    org-jetbrains-kotlin-android = { id = "org.jetbrains.kotlin.android", version.ref = "kotlin" }
    
    // Add this line
    compose-compiler = { id = "org.jetbrains.kotlin.plugin.compose", version.ref = "kotlin" }
    
  3. في ملف build.gradle.kts الأساسي للمشروع، أضِف ما يلي إلى قسم plugins.

    plugins {
    // Existing plugins
    alias(libs.plugins.compose.compiler) apply false
    }
    
  4. في كل وحدة تستخدِم Compose، طبِّق المكوّن الإضافي:

    plugins {
    // Existing plugins
    alias(libs.plugins.compose.compiler)
    }
    

من المفترض أن يتم الآن إنشاء المشروع وتجميعه إذا كان يستخدم الإعداد التلقائي. إذا تم ضبط خيارات مخصّصة على مجمّع Compose، اتّبِع الخطوات الواردة في القسم التالي.

إعداد مجمّع Compose بدون كتالوجات إصدارات Gradle

أضِف المكوّن الإضافي إلى ملفات build.gradle.kts المرتبطة بالوحدات التي يتم فيها استخدام Compose:

plugins {
    id("org.jetbrains.kotlin.plugin.compose") version "2.3.21" // this version matches your Kotlin version
}

أضِف مسار الفئة إلى ملف build.gradle.kts على مستوى المشروع الأعلى:

buildscript {
    dependencies {
        classpath("org.jetbrains.kotlin.plugin.compose:org.jetbrains.kotlin.plugin.compose.gradle.plugin:2.3.21")
    }
}

خيارات الضبط باستخدام المكوّن الإضافي Compose Compiler Gradle

لضبط مجمّع Compose باستخدام المكوّن الإضافي Gradle، أضِف كتلة composeCompiler إلى ملف build.gradle.kts للوحدة على المستوى الأعلى:

android {  }

composeCompiler {
    reportsDestination = layout.buildDirectory.dir("compose_compiler")
    stabilityConfigurationFile = rootProject.layout.projectDirectory.file("stability_config.conf")
}

للاطّلاع على القائمة الكاملة بالخيارات المتاحة، يُرجى الرجوع إلى المستندات.

إعداد تبعيات Compose

استخدِم دائمًا أحدث إصدار من قائمة مواد Compose: 2026.06.00.

اضبط العلامة compose على true داخل BuildFeatures في Android لـ تفعيل وظائف Compose في "استوديو Android".

أضِف التعريف التالي إلى ملف build.gradle لتطبيقك:

أنيق

android {
    buildFeatures {
        compose true
    }
}

Kotlin

android {
    buildFeatures {
        compose = true
    }
}

أضِف قائمة مواد Compose والمجموعة الفرعية من تبعيات مكتبة Compose:

أنيق

dependencies {

    def composeBom = platform('androidx.compose:compose-bom:2026.06.00')
    implementation composeBom
    androidTestImplementation composeBom

    // Choose one of the following:
    // Material Design 3
    implementation 'androidx.compose.material3:material3'
    // or skip Material Design and build directly on top of foundational components
    implementation 'androidx.compose.foundation:foundation'
    // or only import the main APIs for the underlying toolkit systems,
    // such as input and measurement/layout
    implementation 'androidx.compose.ui:ui'

    // Android Studio Preview support
    implementation 'androidx.compose.ui:ui-tooling-preview'
    debugImplementation 'androidx.compose.ui:ui-tooling'

    // UI Tests
    androidTestImplementation 'androidx.compose.ui:ui-test-junit4'
    debugImplementation 'androidx.compose.ui:ui-test-manifest'

    // Optional - Add window size utils
    implementation 'androidx.compose.material3.adaptive:adaptive'

    // Optional - Integration with activities
    implementation 'androidx.activity:activity-compose:1.13.0'
    // Optional - Integration with ViewModels
    implementation 'androidx.lifecycle:lifecycle-viewmodel-compose:2.10.0'
    // Optional - Integration with LiveData
    implementation 'androidx.compose.runtime:runtime-livedata'
    // Optional - Integration with RxJava
    implementation 'androidx.compose.runtime:runtime-rxjava2'

}

Kotlin

dependencies {

    val composeBom = platform("androidx.compose:compose-bom:2026.06.00")
    implementation(composeBom)
    androidTestImplementation(composeBom)

    // Choose one of the following:
    // Material Design 3
    implementation("androidx.compose.material3:material3")
    // or skip Material Design and build directly on top of foundational components
    implementation("androidx.compose.foundation:foundation")
    // or only import the main APIs for the underlying toolkit systems,
    // such as input and measurement/layout
    implementation("androidx.compose.ui:ui")

    // Android Studio Preview support
    implementation("androidx.compose.ui:ui-tooling-preview")
    debugImplementation("androidx.compose.ui:ui-tooling")

    // UI Tests
    androidTestImplementation("androidx.compose.ui:ui-test-junit4")
    debugImplementation("androidx.compose.ui:ui-test-manifest")

    // Optional - Add window size utils
    implementation("androidx.compose.material3.adaptive:adaptive")

    // Optional - Integration with activities
    implementation("androidx.activity:activity-compose:1.13.0")
    // Optional - Integration with ViewModels
    implementation("androidx.lifecycle:lifecycle-viewmodel-compose:2.10.0")
    // Optional - Integration with LiveData
    implementation("androidx.compose.runtime:runtime-livedata")
    // Optional - Integration with RxJava
    implementation("androidx.compose.runtime:runtime-rxjava2")

}

التوافق بين compileSdk والمكوّن الإضافي لنظام Gradle المتوافق مع Android

تعتمد إصدارات مكتبة Compose باستمرار أحدث إصدارات compileSdk لتوفير إمكانية الوصول إلى أحدث ميزات Android. تتطلّب إصدارات compileSdk الأحدث إصدارات أحدث من المكوّن الإضافي لنظام Gradle المتوافق مع Android، لذا يتطلّب اعتماد إصدارات Compose الجديدة أيضًا أن تعتمد المشاريع إصدارات جديدة من المكوّن الإضافي لنظام Gradle المتوافق مع Android. ننصحك بإبقاء compileSdk لمشروعك محدّثًا بأحدث الإصدارات التي تم طرحها. لا يرتبط compileSdk بـ targetSdk.

على سبيل المثال، اعتبارًا من الإصدار 1.12.0 من Compose، يُطلب من المشاريع استخدام compileSdk 37 والإصدار 9 من المكوّن الإضافي لنظام Gradle المتوافق مع Android.

لمعرفة إصدار المكوّن الإضافي لنظام Gradle المتوافق مع Android المتوافق مع مستويات واجهة برمجة التطبيقات المختلفة، يُرجى الاطّلاع على مستندات التوافق مع مستوى واجهة برمجة التطبيقات في المكوّن الإضافي لنظام Gradle المتوافق مع Android.